These are chat archives for springjazzy/GIS_JKH_Integration

1st
Jun 2016
BUGBEAR
@iBUGBEAR
Jun 01 2016 06:40
Коллеги, кто-нибудь может поделиться примером работы со справочниками на C#? С exportNsiListRequest вроде разобрался, а вот с exportNsiItemRequest сомневаюсь... С C# мало знаком, осваиваю по ходу... Буду очень благодарен за любые примеры.
Vershinin Sergey
@versh23
Jun 01 2016 06:42
Коллеги, кто то еще использует клинет-серверную реализацию подписи?
NadyaTomsk
@NadyaTomsk
Jun 01 2016 06:42
@iBUGBEAR listView1.Items.Clear();
using (NsiPortsTypeClient np = new NsiPortsTypeClient("NsiPort"))
{
np.ClientCredentials.UserName.UserName = PORTUSER;
np.ClientCredentials.UserName.Password = PORTPASS;
HeaderType header = new HeaderType
{
Date = DateTime.Now,
MessageGUID = Guid.NewGuid().ToString()
};
exportNsiItemRequest nireq = new exportNsiItemRequest
{ Id = "signed-data-container", RegistryNumber = comboBox1.SelectedValue.ToString() };
exportNsiItemResult nires = new exportNsiItemResult();
try
{
np.exportNsiItem(header, nireq, out nires);
foreach (var item in ((NsiItemType)nires.Item).NsiElement)
{
ListViewItem li = new ListViewItem
{
Text = item.Code,
};
li.SubItems.Add(new ListViewItem.ListViewSubItem { Text = item.GUID });
try
{
li.SubItems.Add(new ListViewItem.ListViewSubItem { Text = ((NsiElementStringFieldType)item.NsiElementField[0]).Value });
}catch
{
li.SubItems.Add(new ListViewItem.ListViewSubItem { Text = ((NsiElementNsiRefFieldType)item.NsiElementField[0]).NsiRef.Ref.Code+" "+((NsiElementNsiRefFieldType)item.NsiElementField[0]).NsiRef.Ref.GUID+" "+ ((NsiElementNsiRefFieldType)item.NsiElementField[0]).NsiRef.Ref.Name });
}
listView1.Items.Add(li);
// listBox1.Items.Add(item.GUID + " " + item.Code + " " + ((NsiElementStringFieldType)item.NsiElementField[0]).Value);
};
ExportNsiItemBut.Enabled = false;
}
catch (Exception er)
{
MessageBox.Show(er.ToString());
}
}
BUGBEAR
@iBUGBEAR
Jun 01 2016 06:44
@NadyaTomsk спасибо большое! :)
ndbn
@ndbn
Jun 01 2016 06:48

посмотрим на загрузку сервиса передающего, может и не нужна будет серверная

как я понимаю, если поставить на серверную ОС то они автоматом потребуют серверную лицензию

(NsiElementStringFieldType)item.NsiElementField[0]).Value

имейте ввиду, что не все справочники возвращают NsiElementStringFieldType

Pavel Druzhinin
@pavelDruzhinin
Jun 01 2016 06:55
@ndbn да,
имейте ввиду, что не все справочники возвращают NsiElementStringFieldType
BUGBEAR
@iBUGBEAR
Jun 01 2016 06:55
@ndbn да да, я как раз столкнулся с такой проблемой, когда самостоятельно делал экспорт справочника...
Pavel Druzhinin
@pavelDruzhinin
Jun 01 2016 06:55
мне этот прикол тоже понравился)
BUGBEAR
@iBUGBEAR
Jun 01 2016 06:56
В виду моего крайне малого опыта работы с C# я не смог обработать этой ситуации) придется углубляться в основы ^^
Pavel Druzhinin
@pavelDruzhinin
Jun 01 2016 06:57
там можно написать в лоб, опрашивая какой тип
NadyaTomsk
@NadyaTomsk
Jun 01 2016 06:57
@pavelDruzhinin я через try catch делала
Alamzhi
@Alamzhi
Jun 01 2016 07:00
про справочники хотел бы добавить что в запросе есть еще параметр ListGroup.NSIRAO, который возвращает уже другой набор элементов
смысл параметра я пока не понимаю =)
BUGBEAR
@iBUGBEAR
Jun 01 2016 07:02
всем спасибо! у меня без ListGroup даже не обрабатывалось вроде, поэтому сразу ставил req.ListGroup = ListGroup.NSI;
Pavel Druzhinin
@pavelDruzhinin
Jun 01 2016 07:07
@NadyaTomsk тоже имеет место быть
Dmitry Zasypkin
@dmitry-zasypkin
Jun 01 2016 07:24
коллеги, подскажите, почему может быть ошибка "Не заполнены обязательные поля: address, address.house" при вызове importHouseRSOData? сначала загрузил ДРСО (оферта) с указанием кода ФИАС одного частного дома, затем вызываю importHouseRSOData с этим же кодом ФИАС - получаю ошибку по поводу address, address.house... а в XSD этих полей вообще нет
NadyaTomsk
@NadyaTomsk
Jun 01 2016 07:37
@dmitry-zasypkin вы когда загружали ДРСО ? у меня не грузиться, возвращается пустой результат (null)
ndbn
@ndbn
Jun 01 2016 07:38

@Alamzhi

НСИ    
Общесистемная нормативно-справочная информация, используемая при функционировании информационной системы.
НСИ РАО    
Группа нормативно-справочной информации, используемая для расширенного описания адресного объекта (ОЖФ).

Я пока пришёл к выводу, что каждый справочник нужно обрабатывать отдельно, не стараться написать что-то одинаковое для всех.

@dmitry-zasypkin ошибка не внутренняя?
Dmitry Zasypkin
@dmitry-zasypkin
Jun 01 2016 07:41
@NadyaTomsk вчера вечером загружал
@ndbn
<Error>
<ErrorCode>INT002022</ErrorCode>
<Description>Не заполнены обязательные поля: address, address.house</Description>
</Error>
это внутри <CommonResult>
NadyaTomsk
@NadyaTomsk
Jun 01 2016 07:43
@dmitry-zasypkin может в самом ФИАС не хватает этих записей ?
Dmitry Zasypkin
@dmitry-zasypkin
Jun 01 2016 07:44
но ведь importSupplyResourceContractData с этим ФИАС проходит
ndbn
@ndbn
Jun 01 2016 07:45
Могли "артефакты" от каких-то проверок остаться. Попробуйте другой адрес указать, ошибка повторяется - проблема у них, ошибка не повторяется - проблема с адресом.
Dmitry Zasypkin
@dmitry-zasypkin
Jun 01 2016 07:45
и если в ЛК добавить это дом, то все хорошо (пробовал с предыдущим домом в такой же ситуации)
NadyaTomsk
@NadyaTomsk
Jun 01 2016 07:45
хм...не сталкивалась
Alamzhi
@Alamzhi
Jun 01 2016 07:46
@dmitry-zasypkin может быть вы отправляете со старым MessageGuid от другого сообщения?
Dmitry Zasypkin
@dmitry-zasypkin
Jun 01 2016 07:47
@Alamzhi нет, гуид генерится каждый раз новый
сервис асинхронный
а кто-нибудь пробовал загружать частные дома? это тэг LivingHouse вместо ApartmentHouse в запросе importHouseRSORequest
ndbn
@ndbn
Jun 01 2016 07:50
Кстати вот форум, не первый раз натыкаюсь: http://forum.burmistr.ru/viewforum.php?f=115
Pavel Druzhinin
@pavelDruzhinin
Jun 01 2016 09:03
 <ErrorCode>CRT000029</ErrorCode>
    <Description>Зарегистрированная организация по SenderID не совпадает с организацией зарегистрированного должностного лица, указанного в сертификате открытого ключа</Description>
у кого-нибудь была такая ошибка?
не помогает даже смена IsOperatorSighnature
shsa
@shsa
Jun 01 2016 09:07
была, но уже не помню как решилась, вроде из-за расхождения ОГРН в ЭЦП и в ГИС ЖКХ
у меня тогда была ситуация, что я себя зарегал как единственного участника в ГИС ЖКХ (администратор, специалист), а подписывал ЭЦП выданной на директора
разработчики тупо мои реквизиты подправили под ЭЦП и все пошло
Pavel Druzhinin
@pavelDruzhinin
Jun 01 2016 09:09
странно, до обновления на СИТ-2 выдаввало что СНИЛС должностного лица не совпадает
shsa
@shsa
Jun 01 2016 09:09
во-во, СНИЛС!
Pavel Druzhinin
@pavelDruzhinin
Jun 01 2016 09:10
я уже не знаю как с ними общаться по почте, потому что пишут что исправлено
shsa
@shsa
Jun 01 2016 09:10
похоже у меня все-таки другая ошибка была
я бы в админке проверил права доступа для поставщиков информации и сравнил с данными ЭЦП
Pavel Druzhinin
@pavelDruzhinin
Jun 01 2016 09:11
это на СИТ-2, я как понимаю там нет личного кабинета?
shsa
@shsa
Jun 01 2016 09:11
конечно есть, все как полагается
Pavel Druzhinin
@pavelDruzhinin
Jun 01 2016 09:13
да посмотрел действительно есть
благодарю
Константин
@LTramp
Jun 01 2016 09:18
@versh23 да
Vershinin Sergey
@versh23
Jun 01 2016 09:40
@LTramp а как у вас получается, формируете xml готовую для отправки, только без подписи. а клиент где и чем подписывает?
Константин
@LTramp
Jun 01 2016 11:35
@versh23 формируем xlm c левой подписью и вычислеными хешами, потом сам хэш подписываем в браузере через криптопро браузер плагин и подменяем подпись. Пример клиент-серверной работы есть в тестовом проекте уважаемого @springjazzy
Vershinin Sergey
@versh23
Jun 01 2016 11:41
@LTramp а плагин не платный? поизучаю примеры..
Pavel Druzhinin
@pavelDruzhinin
Jun 01 2016 12:13
Такой вопрос, где можно найти importLicense?
Пролазил весь ТФФ поиском нигде не нашел
developerts
@developerts
Jun 01 2016 12:18
в hcs-house-management-types-... в importContractRequest встречается такое:
                    <xs:element name="LicenseRequest" type="xs:boolean" fixed="true" minOccurs="0">
                        <xs:annotation>
                            <xs:documentation>Формировать заявки в реестр лицензий, если сведения о лицензии/управляемом объекте отсутсвуют</xs:documentation>
                        </xs:annotation>
                    </xs:element>
Pavel Druzhinin
@pavelDruzhinin
Jun 01 2016 12:31
гм, саппорт мне прислал, что я должен протестировать эту функцию
developerts
@developerts
Jun 01 2016 12:34
такой нет. Есть exportLicense ( в hcs-licenses-service-....wsdl )
Pavel Druzhinin
@pavelDruzhinin
Jun 01 2016 12:38
да, я его видел
Константин
@LTramp
Jun 01 2016 13:28
@versh23 плагин бесплатный, но он использует Криптопро CSP, за который пользователью нужно отвалить денюжку. В районе ~2700р