예제 #1
0
        public int GetStatusAsync(DeviceRevisionResponseEventHandler CallBack)
        {
            CurrentGetStatusCallBack = CallBack;
            Utils.ToLog("Асинхронный запрос статуса Glory");
            int    res      = 0;
            string Status   = "";
            bool   WithCash = false;

            FCCSrv2.StatusRequestType objStatusRequest = new FCCSrv2.StatusRequestType();
            objStatusRequest.Id     = GetId();
            CurrentGetStatusAsyncID = objStatusRequest.Id;
            objStatusRequest.SeqNo  = GetSequenceNumber();
            objStatusRequest.Option = new FCCSrv2.StatusOptionType();
            if (WithCash)
            {
                objStatusRequest.Option.type = FCC_REQ_GETST_WITH_CASH.ToString();
            }
            else
            {
                objStatusRequest.Option.type = FCC_REQ_GETST_WITHOUT_CASH.ToString();
            }

            try
            {
                clsBrueBoxService.GetStatusAsync(objStatusRequest);
            }
            catch (Exception e)
            {
                Utils.ToLog("Ошибка асинхронного запроса статуса " + e.Message);
                Status = "Ошибка запроса статуса Glory. " + e.Message;
                res    = -1;
            }
            return(res);
        }
예제 #2
0
        public int GetStatus(out string Status)
        {
            Utils.ToLog("Запрос статуса");
            int res = 0;

            Status = "";
            bool WithCash = false;

            FCCSrv2.StatusRequestType objStatusRequest = new FCCSrv2.StatusRequestType();
            objStatusRequest.Id     = GetId();
            objStatusRequest.SeqNo  = GetSequenceNumber();
            objStatusRequest.Option = new FCCSrv2.StatusOptionType();
            if (WithCash)
            {
                objStatusRequest.Option.type = FCC_REQ_GETST_WITH_CASH.ToString();
            }
            else
            {
                objStatusRequest.Option.type = FCC_REQ_GETST_WITHOUT_CASH.ToString();
            }
            try
            {
                FCCSrv2.StatusResponseType objStatusResponse = clsBrueBoxService.GetStatus(objStatusRequest);
                if (int.Parse(objStatusResponse.result) == FCC_SUCCESS)
                {
                    res    = int.Parse(objStatusResponse.Status.Code);
                    Status = GetStatusStringRus(res) + "Код: " + res.ToString();
                    int RBWState = int.Parse(objStatusResponse.Status.DevStatus.Where(a => a.devid == "1").FirstOrDefault().st);
                    int RCWState = int.Parse(objStatusResponse.Status.DevStatus.Where(a => a.devid == "2").FirstOrDefault().st);
                    Status += Environment.NewLine + GetDiviceStateByCode(RBWState, 1);
                    Status += Environment.NewLine + GetDiviceStateByCode(RBWState, 2);
                }
                else
                {
                    res    = int.Parse(objStatusResponse.result);
                    Status = "Ошибка соединения с сервером FCC";
                }

                Utils.ToLog(String.Format("objStatusResponse.result = {0};  objStatusResponse.Status.Code = {1}; StatusRus = {2} ", objStatusResponse.result, objStatusResponse.Status.Code, Status));
            }
            catch (Exception e)
            {
                Utils.ToLog("Ошибка запроса статуса " + e.Message);
                Status = "Ошибка запроса статуса Glory. " + e.Message;
                res    = -1;
            }
            return(res);
        }