Exemplo n.º 1
0
        private static AcceptMaterialCallResponse AnswerMaterialCall(CallInfo call, string user, string passsword)
        {
            IOTService service = GetOTService();
            var        request = new AcceptMaterialCallRequest
            {
                User     = user,
                Password = passsword,
                CallId   = call.Id
            };

            return(service.AcceptMaterialCall(request));
        }
Exemplo n.º 2
0
        private static StartSerialResponse StartSerial(SerialInfo serial, string user, string passsword, string equipment, string workarea)
        {
            IOTService service = GetOTService();
            var        request = new StartSerialRequest
            {
                Equipment    = equipment,
                Operation    = serial.Operation,
                SerialNumber = serial.SerialNumber,
                Password     = passsword,
                OperationId  = serial.OperationId,
                Order        = serial.Order,
                ProductCode  = serial.ProductCode,
                Status       = serial.Status,
                User         = user
            };

            return(service.StartSerial(request));
        }
Exemplo n.º 3
0
        private static void OnSmartWatchConnected(Device device)
        {
            IOTService service = GetOTService();

            try
            {
                var smartWatchInfo = service.GetSmartWatchUser(device.ClientUniqueID);
                if (smartWatchInfo.Succeeded)
                {
                    DeleteAllMessages(device.ClientUniqueID);
                    lock (_clientMessagesLock)
                    {
                        if (!clients.ContainsKey(device.ClientUniqueID))
                        {
                            clients.Add(device.ClientUniqueID, new ClientRepository
                            {
                                UserName  = device.Username,
                                Password  = device.Password,
                                Equipment = smartWatchInfo.Equipment,
                                WorkArea  = smartWatchInfo.WorkArea,
                                Role      = smartWatchInfo.Role
                            });
                        }
                    }
                    SendDPICheck(device);
                }
                else
                {
                    SendMessage(device.ClientUniqueID, OTMessageType.Warning, "Username o Password errati", string.Empty);
                }
            }
            catch (Exception e)
            {
                var x = e.Message;
            }
        }
Exemplo n.º 4
0
        private static void RefreshSerials(Dictionary <string, Credentials> credentials)
        {
            Dictionary <string, List <SerialInfo> > serials    = new Dictionary <string, List <SerialInfo> >();
            Dictionary <string, List <SerialInfo> > newSerials = new Dictionary <string, List <SerialInfo> >();
            IOTService service = GetOTService();

            foreach (var c in credentials)
            {
                serials.Add(c.Key, new List <SerialInfo>());
                var serialsResponse = service.GetSerials(new GetSerialsRequest {
                    Equipment = c.Value.Equipment, User = c.Value.UserName, Password = c.Value.Password
                });
                if (serialsResponse.Succeeded)
                {
                    foreach (var o in serialsResponse.Orders)
                    {
                        serials[c.Key].AddRange(o.Serials.Select(s => new SerialInfo
                        {
                            Operation    = o.Operation,
                            Order        = o.Order,
                            ProductCode  = o.ProductCode,
                            Status       = s.Status,
                            SerialNumber = s.SerialNumber,
                            OperationId  = o.OperationId
                        }).ToList());
                    }
                }
                if (!serials[c.Key].Any())
                {
                    serials.Remove(c.Key);
                }
            }

            lock (_clientMessagesLock)
            {
                foreach (var equipClient in serials)
                {
                    List <SerialInfo> clientSerials = new List <SerialInfo>();
                    foreach (var s in equipClient.Value)
                    {
                        if (!clients[equipClient.Key].Messages.Select(m => m.Value as MessageInfo <SerialInfo>).Any(m => m != null && m.Data.SerialNumber == s.SerialNumber && m.Data.Operation == s.Operation && m.Data.Order == s.Order && m.Data.ProductCode == s.ProductCode))
                        {
                            clientSerials.Add(new SerialInfo
                            {
                                Operation    = s.Operation,
                                Order        = s.Order,
                                ProductCode  = s.ProductCode,
                                SerialNumber = s.SerialNumber,
                                Status       = s.Status,
                                OperationId  = s.OperationId
                            });
                        }
                    }
                    if (clientSerials.Any())
                    {
                        newSerials.Add(equipClient.Key, clientSerials);
                    }
                }
            }
            foreach (var clientId in newSerials)
            {
                foreach (var serialInfo in clientId.Value)
                {
                    SendMessage(clientId.Key, OTMessageType.Serial, serialInfo.SerialNumber, string.Empty, serialInfo);
                }
            }
        }