add
zongzhibin
2024-11-29 c6dad51bdd23cf8425a2e6bb47b9b9412a0dabbe
add
已修改7个文件
150 ■■■■ 文件已修改
CC/iWareCC_ASRS/FormCC.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CC/iWareCC_ASRS/ThreadService/04_BZ21(搬运整垛机器人)/DataProcess_BZ21.cs 105 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CC/iWareCC_ASRS/ThreadService/05_BZ30(齐套验证)/DataProcess_ValidateQiTao.cs 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CC/iWareModel/EnumType/EDevice/Station/StationLocationEnum.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CC/iWareSql/WmsDBModel/mes_push_papercut.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
SDA/iWareSda/Devices/4-Station/StationModel/Station_CacheEntity.cs 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SDA/iWareSda/Model/StationLocationEnum.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CC/iWareCC_ASRS/FormCC.cs
@@ -28,6 +28,7 @@
using System.Windows.Forms;
using XiGang.Core.Model;
using XiGang.Core.Model.ViewModels;
using static iWareCC.ThreadService._04_BZ21_搬运整垛机器人_.DataProcess_BZ21;
namespace iWareCC
{
CC/iWareCC_ASRS/ThreadService/04_BZ21£¨°áÔËÕû¶â»úÆ÷ÈË£©/DataProcess_BZ21.cs
@@ -5,8 +5,10 @@
using iWareModel;
using iWareSql.DataAccess;
using iWareSql.WmsDBModel;
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading;
@@ -28,6 +30,7 @@
                {
                    if (SystemValue.isStartedModel)
                    {
                        var rgvLocation = StationLocationEnum.BZ21.ToString();
                        /*
                         * 1、从数据库中判断是否齐套
@@ -80,6 +83,22 @@
                                    SystemWarningMsg._lbl_alert_DataProcess_BZ21 = $"{rgvLocation.ToString()},根据UPI:{upiCode}没有找到对象 ";
                                    continue;
                                }
                                string upi = "LS070700101B0001GS";
                                var res =new HTTPService("http://172.17.1.22:44374/api/LuLi/").getContent<Respone>("cartons-machine?PackageCode="+upi, Guid.NewGuid(),10000);
                                if (res.iState == 0)
                                {
                                    var papercut = ClassHelper.RotationMapping<mes_push_papercut, mes_batchOrderUPI_new>(upiObj);
                                    papercut.Id = Yitter.IdGenerator.YitIdHelper.NextId();
                                    papercut.ApiMessage = res.message;
                                    papercut.PushStatus = (int)PushStatusEnum.PushSuccess;
                                    wmsDB.mes_push_papercut.Add(papercut);
                                }
                                else
                                {
                                    continue;
                                }
                                //更新表
                                var mesgather = wmsDB.mes_package_gather.Where(x => x.PackageCode == upiObj.PackageCode).FirstOrDefault();
                                if (mesgather != null)
                                {
@@ -95,21 +114,24 @@
                                var _id = Yitter.IdGenerator.YitIdHelper.NextId();
                                var putpakegecodeid = Yitter.IdGenerator.YitIdHelper.NextId();
                                var plcTaskNo = BusinessHelper.CreatePlcTaskIdForSrmTask();
                                //新增表
                                var mesinequeue = ClassHelper.RotationMapping<mes_package_linequeue, mes_batchOrderUPI_new>(upiObj);
                                mesinequeue.Id = Yitter.IdGenerator.YitIdHelper.NextId();
                                //新增mes推送表
                                var putpakegecode = new mes_push_packagecode()
                                {
                                    Id = putpakegecodeid,
                                    PackageCode = upiObj.PackageCode,
                                    PushStatus = 0,
                                    PushNum = 0,
                                    ApiMessage = "11",
                                    ApiMessage = "待推送",
                                    CreateTime = DateTime.Now,
                                    CreateUserName = "CC",
                                    UpdateTime = DateTime.Now,
                                    UpdateUserName = "CC",
                                    CreateOrgName = "11"
                                };
                                //新增任务表
                                var task = new wms_rbline_task()
                                {
                                    Id = _id,
@@ -133,17 +155,32 @@
                                    UpdateUserName = "CC",
                                    PlaceCode = place
                                };
                                //新增打印表
                                var printid= Yitter.IdGenerator.YitIdHelper.NextId();
                                var print = ClassHelper.RotationMapping<wms_record_print, mes_batchOrderUPI_new>(upiObj);
                                print.Id = printid;
                                print.PrintType = (int)PrintTypeEnum.包装条码;
                                print.PrintSource = (int)PrintSourceEnum.包装条码打印;
                                print.PrintSheetNum = 1;
                                print.PrintNum= 0;
                                print.PrintStatus = (int)PrintStatuEnum.未打印;
                                print.IsAllowPrint= true;
                                wmsDB.wms_record_print.Add(print);
                                wms_record_print printtwo = print;
                                printtwo.Id= Yitter.IdGenerator.YitIdHelper.NextId();
                                wmsDB.wms_record_print.Add(printtwo);
                                wmsDB.mes_package_linequeue.Add(mesinequeue);
                                wmsDB.wms_rbline_task.Add(task);
                                wmsDB.wms_rbline_task.Add(task);
                                wmsDB.mes_push_packagecode.Add(putpakegecode);
                                using (StationServiceClient client = new StationServiceClient())
                                {
                                    var res = client.WriteSurroundTaskInfo((int)EDevice.Station, rgvLocation, short.Parse(task.TaskNo),
                                    var plcres = client.WriteSurroundTaskInfo((int)EDevice.Station, rgvLocation, short.Parse(task.TaskNo),
                                          (short)upiObj.Length, (short)upiObj.Width, cartonhigh, cartonwidth, 0, 0);
                                    if (!res.result)
                                    if (!plcres.result)
                                    {
                                        SystemWarningMsg._lbl_alert_DataProcess_BZ12 = $"{rgvLocation.ToString()}-下发入库任务 å¤±è´¥,WriteInStoreTaskInfoAsync è¿”回:{res.resMsg}";
                                        SystemWarningMsg._lbl_alert_DataProcess_BZ12 = $"{rgvLocation.ToString()}-下发入库任务 å¤±è´¥,WriteInStoreTaskInfoAsync è¿”回:{plcres.resMsg}";
                                        continue;
                                    }
                                    else
@@ -164,6 +201,9 @@
                }
            }
        }
        /// <summary>
        /// å‘mes推送包装完成
        /// </summary>
        public static void PushPackageCode()
        {
            while (true)
@@ -177,7 +217,22 @@
                        PushPackageCodeInput input = new PushPackageCodeInput();
                        input.PackageCode = value.PackageCode;
                        var res = HttpHelper.GetHttpResponse<PushPackageCodeInput, Respone>(" ", input, 10000);
                        if (res.iState == 0)
                        {
                            value.PushStatus = (int)PushStatusEnum.PushSuccess;
                            value.ApiMessage = res.message;
                        }
                        else
                        {
                            value.PushStatus = (int)PushStatusEnum.Pushing;
                            value.PushNum++;
                            value.ApiMessage+= res.message;
                            if (value.PushNum == 3)
                            {
                                value.PushStatus = (int)PushStatusEnum.PushFail;
                            }
                        }
                        edm.SaveChanges();
                    }
                }
            }
@@ -191,7 +246,7 @@
            /// <summary>
            /// è¿”回码
            /// </summary>
            public string code { get; set; }
            public int iState { get; set; }
            /// <summary>
            /// è¿”回消息
@@ -199,14 +254,38 @@
            public string message { get; set; }
            /// <summary>
            /// è¯·æ±‚编号
            /// </summary>
            public string reqCode { get; set; }
            /// <summary>
            /// è‡ªå®šä¹‰è¿”回(返回任务单号)
            /// è‡ªå®šä¹‰è¿”回
            /// </summary>
            public string data { get; set; }
        }
        /// <summary>
        /// æŽ¨é€çŠ¶æ€
        /// </summary>
        public enum PushStatusEnum
        {
            /// <summary>
            /// æœªæŽ¨é€
            /// </summary>
            [Description("未推送")]
            NotPush = 0,
            /// <summary>
            /// æŽ¨é€ä¸­
            /// </summary>
            [Description("推送中")]
            Pushing = 1,
            /// <summary>
            /// æŽ¨é€æˆåŠŸ
            /// </summary>
            [Description("推送成功")]
            PushSuccess = 2,
            /// <summary>
            /// æŽ¨é€å¤±è´¥
            /// </summary>
            [Description("推送失败")]
            PushFail = 3,
        }
    }
}
CC/iWareCC_ASRS/ThreadService/05_BZ30(ÆëÌ×ÑéÖ¤)/DataProcess_ValidateQiTao.cs
@@ -36,7 +36,7 @@
                {
                    if (SystemValue.isAllowRuning_DataProcess_ValidateQiTao && SystemValue.isStartedModel)
                    {
                        var rgvLocation = StationLocationEnum.BZ39.ToString();
                        var rgvLocation = StationLocationEnum.BZ30.ToString();
                        using (WmsDBModel wmsDB = new WmsDBModel())
                        {
@@ -55,23 +55,27 @@
                            var configValues = configValue.Split('|');
                            var packageCode = configValues[0];
                            var qitaoValue = configValues[1];//齐套  ä¸é½å¥—
                            bool iscomplete = false;
                            if (qitaoValue.Equals("齐套"))
                            {
                                iscomplete = true;
                            }
                            //TODO:推送给PLC åŽ»å“ªä¸ªæ–¹å‘ï¼Ÿ
                            /*
                            using (StationServiceClient client = new StationServiceClient())
                            {
                                var res = await client.ChangeModeAsync((int)EDevice.Station, (int)RbRunModeEnum.入库模式, rgvLocation);
                                var res = client.WriteQiTaoInfo((int)EDevice.Station, rgvLocation, iscomplete);
                                if (!res.result)
                                {
                                    SystemWarningMsg._lbl_Alert_DataProcess_ValidateQiTao = $"{rgvLocation.ToString()}-推送给PLC切换模式 å¤±è´¥,ChangeModeAsync è¿”回:{res.resMsg}";
                                    SystemWarningMsg._lbl_Alert_DataProcess_ValidateQiTao = $"{rgvLocation.ToString()}-推送给PLC是否齐套失败,ChangeModeAsync è¿”回:{res.resMsg}";
                                    continue;
                                }
                                else
                                {
                                    Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-推送给PLC切换模式 æˆåŠŸ,ChangeModeAsync,参数: ç«™ç‚¹{rgvLocation}");
                                    Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-推送给PLC是否齐套 æˆåŠŸ,ChangeModeAsync,参数: ç«™ç‚¹{rgvLocation}");
                                }
                            }
                            //*/
                            //
                            //更新值
CC/iWareModel/EnumType/EDevice/Station/StationLocationEnum.cs
@@ -28,6 +28,10 @@
        BZ12 = 103,
        BZ21 = 104
        BZ21 = 104,
        /// <summary>
        /// é½å¥—验证工位
        /// </summary>
        BZ30 = 105
    }
}
CC/iWareSql/WmsDBModel/mes_push_papercut.cs
@@ -25,7 +25,7 @@
        public DateTime? PushTime { get; set; }
        public int PushNum { get; set; }
        public int PushNum { get; set; } = 0;
        [Required]
        [StringLength(50)]
SDA/iWareSda/Devices/4-Station/StationModel/Station_CacheEntity.cs
@@ -23,6 +23,7 @@
        public static string W_DBHeaderWithSeparate_BZ12 = "3003" + WareSdaStruct.PLCDBADDRESS_SEPARATE;
        public static string W_DBHeaderWithSeparate_BZ01 = "3001" + WareSdaStruct.PLCDBADDRESS_SEPARATE;
        public static string W_DBHeaderWithSeparate_BZ21 = "3004" + WareSdaStruct.PLCDBADDRESS_SEPARATE;
        public static string W_DBHeaderWithSeparate_BZ30 = "3005" + WareSdaStruct.PLCDBADDRESS_SEPARATE;
        /// <summary>
        /// è¯»å–DB
@@ -295,9 +296,18 @@
                R_SurrouondTaskNo = W_DBHeaderWithSeparate_BZ21 + "104.0",
                R_ReadCodeResult = W_DBHeaderWithSeparate_BZ21 + "52.0",
            });
            _dbBlockForRead.R_StationForReadCommList.Add(new StationDBForReadComm()
            {
                StationCode = StationLocationEnum.BZ30.ToString(),
                R_PalletizingAck = W_DBHeaderWithSeparate_BZ21 + "50.2",
                R_ReqParseData = W_DBHeaderWithSeparate_BZ21 + "50.0",
                R_SurrouondTaskFinish = W_DBHeaderWithSeparate_BZ21 + "50.1",
                R_SurrouondTaskNo = W_DBHeaderWithSeparate_BZ21 + "104.0",
                R_ReadCodeResult = W_DBHeaderWithSeparate_BZ21 + "52.0",
            });
            return _dbBlockForRead;
        }
SDA/iWareSda/Model/StationLocationEnum.cs
@@ -34,6 +34,10 @@
        /// <summary>
        /// åˆåŒ…工位
        /// </summary>
        BZ21 = 104
        BZ21 = 104,
        /// <summary>
        /// é½å¥—验证工位
        /// </summary>
        BZ30 = 105
    }
}