示例#1
0
 public static Cis TranslateCis(Cis cis)
 {
     if (cis.status == "EMITTED")
     {
         cis.status = "Эмитирован. Выпущен";
     }
     if (cis.status == "APPLIED")
     {
         cis.status = "Эмитирован. Получен";
     }
     if (cis.status == "INTRODUCED")
     {
         cis.status = "В обороте";
     }
     if (cis.status == "WRITTEN_OFF")
     {
         cis.status = "Списан";
     }
     if (cis.status == "RETIRED")
     {
         cis.status = "Выбыл";
     }
     if (cis.emissionType == "REMAINS")
     {
         cis.emissionType = "Маркировка остатков";
     }
     if (cis.emissionType == "PRODUCTION")
     {
         cis.emissionType = "Произведено в РФ";
     }
     if (cis.emissionType == "IMPORT")
     {
         cis.emissionType = "Импорт";
     }
     if (cis.emissionType == "REMARK")
     {
         cis.emissionType = "Перемаркировка";
     }
     if (cis.emissionType == "COMMISSION")
     {
         cis.emissionType = "Принят на комиссию";
     }
     return(cis);
 }
示例#2
0
        public static string GetStatus(string km, bool refreshtoken)
        {
            token = config.AppSettings.Settings["token"].Value;
            if (token == string.Empty || refreshtoken)
            {
                GetToken();
            }
            Cis cis = new Cis();

            try
            {
                var client = new RestClient($"{config.AppSettings.Settings["url"].Value}v4/facade/identifytools/info?childrenPage=1&childrenLimit=50&cis={HttpUtility.UrlEncode(km, Encoding.UTF8)}");
                client.Timeout = -1;
                var request = new RestRequest(Method.GET);
                request.AddHeader("Authorization", $"Bearer {token}");
                IRestResponse response = client.Execute(request);
                logger.Info($"Данные по КМ ({km}) успешно получены.");
                cis = JsonConvert.DeserializeObject <Cis>(response.Content);
                if (cis.error != null && !refreshtoken)
                {
                    return(GetStatus(km, true));
                }
                if (cis.status == null)
                {
                    return(cis.error_message + "!");
                }
                else
                {
                    cis = TranslateCis(cis);
                }
                return($"{cis.status} ({cis.emissionType})");
            }
            catch (Exception ex)
            {
                logger.Error($"Ошибка получения данных по КМ ({km})!\n" + ex.Message);
                return("Ошибка получения статуса!");
            }
        }