222
schangxiang@126.com
2024-12-14 3eabfd8dfa2574efbe8ce8d4a64862c16ad04823
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
//using Admin.NET.Application;
//using iWareCC.Common.Helper;
//using iWareCommon.Common.Globle;
//using iWareCommon.Utils;
//using iWareModel;
//using iWareSql.DataAccess;
//using iWareSql.WmsDBModel;
//using System;
//using System.Collections.Generic;
//using System.Linq;
//using System.Threading;
//using System.Threading.Tasks;
 
//namespace iWareCC.ThreadService
//{
//    /// <summary>
//    /// 机器人缓存岛 人工强制出库 处理
//    /// </summary>
//    public static class CC_DataProcess_RobotBuffer_ForceOutbound
//    {
//        public static bool Handler(string packageCode, ref string alertMsg)
//        {
//            alertMsg = "";
//            LogType logType = LogType.DataProcess_RobotBuffer_AutoQiTaoOutbound;
 
//            try
//            {
 
//                var rgvLocation = StationLocationEnum.BZ39.ToString();
//                var obj = FormCC.stationView.R_StationForReadCommList.Where(x => x.StationCode == rgvLocation.ToString()).FirstOrDefault();
//                if (obj.R_ForceOutboundMode == false)
//                {
//                    alertMsg = "PLC不是强制出库模式";
//                    return false;
//                }
//                using (WmsDBModel wmsDB = new WmsDBModel())
//                {
//                    List<wms_stock_quan> qunList = wmsDB.wms_stock_quan.Where(x => x.StockStatus == (int)StockStatusEnum.在库
//                        && x.PackageCode == packageCode
//                    ).ToList();
 
//                    foreach (var x in qunList)
//                    {
//                        x.StockStatus = (int)StockStatusEnum.人工强制待出库;
 
//                        //生成出库任务
//                        //记录任务
//                        var _id = Yitter.IdGenerator.YitIdHelper.NextId();
//                        var plcTaskNo = BusinessHelper.CreatePlcTaskId();
//                        plcTaskNo = MyExtendHelper.GetNewTaskNo(wmsDB, RbTaskTypeEnum.强制出库任务, plcTaskNo);
//                        var new_task = new wms_rbline_task()
//                        {
//                            Id = _id,
//                            TaskNo = plcTaskNo,
 
//                            Upi = x.Upi,
//                            Length = x.Length,
//                            Width = x.Width,
//                            Thk = x.Thk,
 
//                            PlanNo = x.PlanNo,
//                            OrderId = x.OrderId,
//                            PackageCode = x.PackageCode,
//                            PlaceCode = x.PlaceCode,
//                            RbTaskType = (int)RbTaskTypeEnum.强制出库任务,
//                            TaskStatus = (int)TaskStatusEnum.新建,
//                            TaskMsg = "人工强制待出库",
 
 
//                            CreateTime = DateTime.Now,
//                            CreateUserName = SysGloble.WCSSystem,
//                            UpdateTime = DateTime.Now,
//                            UpdateUserName = SysGloble.WCSSystem,
//                        };
 
//                        wmsDB.wms_rbline_task.Add(new_task);
 
//                        var place = StationHandler.GetPlaceByPlaceCode(x.PlaceCode, wmsDB);
//                        place.PlaceStatus = (int)PlaceStatusEnum.锁定;
 
//                        Thread.Sleep(100);
//                    }
 
 
 
//                    wmsDB.SaveChanges();
//                }
 
//                return true;
 
//            }
//            catch (Exception ex)
//            {
//                alertMsg = " 出现异常:" + ex.Message;
//                SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_AutoQiTaoOutbound += " 出现异常:" + ex.Message + SysGloble.SPLIT_STR;
//                Log4NetHelper.WriteErrorLog(logType, " 出现异常:" + ex.Message, ex);
 
//                return false;
//            }
//        }
//    }
//}