示例#1
0
        public InProcessMaterial CreateMaterial(int orderID, int processID, int jobID, int palletNum, int face, long matID)
        {
            var job     = _byOrderID[orderID];
            var program = "";

            if (_programs.ContainsKey(jobID))
            {
                program = _programs[jobID];
            }

            var matDetails = _logDb.GetMaterialDetails(matID);

            return(new InProcessMaterial()
            {
                MaterialID = matID,
                JobUnique = job.UniqueStr,
                Process = _procIDToProcNum[processID],
                Path = 1,
                PartName = job.PartName,
                Serial = matDetails?.Serial,
                WorkorderId = matDetails?.Workorder,
                SignaledInspections =
                    _logDb.LookupInspectionDecisions(matID)
                    .Where(x => x.Inspect)
                    .Select(x => x.InspType)
                    .Distinct()
                    .ToList(),
                Action = new InProcessMaterialAction()
                {
                    Type = InProcessMaterialAction.ActionType.Waiting,
                    Program = program
                },
                Location = new InProcessMaterialLocation()
                {
                    Type = InProcessMaterialLocation.LocType.OnPallet,
                    Pallet = palletNum.ToString(),
                    Face = face
                }
            });
        }