These are chat archives for springjazzy/GIS_JKH_Integration

21st
Feb 2017
mkpmkp
@mkpmkp
Feb 21 2017 03:06
День добрый.
Проверил по загрузке договора
везде стоит одинаковая дата <StartSupplyDate>2009-06-01</StartSupplyDate>
но ошибка валится "(SRV026034) Для следующих домов в сведения о поставляемых ресурсах даты начала поставки ресурса меньше, чем дата начала поставки ресурса в основных сведениях договора:"
Дата начала договора и поставки ресурсов ВЕЗДЕ ОДИНАКОВАЯ... чо делать???
Кто работает с этими гениями из другого часового пояса??? Как у вас дела с датами?
Отсылаю <EffectiveDate>2009-06-01</EffectiveDate> обратно получаю <EffectiveDate>2009-06-01 04:00:00</EffectiveDate>
Игорь Радченко
@DeathmentGD_twitter
Feb 21 2017 03:27
Infrastructure.HouseManagementServiceAsync.SupplyResourceContractTypeObjectAddress house = new Infrastructure.HouseManagementServiceAsync.SupplyResourceContractTypeObjectAddress()
                                    {
                                        FIASHouseGuid = houses.Rows[j][0].ToString(),
                                        TransportGUID = Guid.NewGuid().ToString(),
                                        Pair = new Infrastructure.HouseManagementServiceAsync.SupplyResourceContractTypeObjectAddressPair[]
                                            {
                                                new Infrastructure.HouseManagementServiceAsync.SupplyResourceContractTypeObjectAddressPair
                                                {
                                                    PairKey = GUIDPairT,
                                                    StartSupplyDate = Convert.ToDateTime(ABON.Rows[i][1]),
                                                    EndSupplyDate = new DateTime(2100,1,1)
                                                }
                                            }
                                    };
importSupplyResourceContractRequestContract contract = new importSupplyResourceContractRequestContract()
                                {
                                    TransportGUID = Guid.NewGuid().ToString(),
                                    Item = new Infrastructure.HouseManagementServiceAsync.SupplyResourceContractType()
                                    {
                                        Item = new Infrastructure.HouseManagementServiceAsync.SupplyResourceContractTypeIsNotContract
                                        {
                                            ContractNumber = ABON.Rows[i][0].ToString(),
                                            //ContractAttachment
                                            EffectiveDate = Convert.ToDateTime(ABON.Rows[i][1]),
                                            EffectiveDateSpecified = true,
                                            SigningDate = Convert.ToDateTime(ABON.Rows[i][1]),
                                            SigningDateSpecified = true,
                                        },
                                        Period = new Infrastructure.HouseManagementServiceAsync.SupplyResourceContractTypePeriod
                                        {
                                            Start = new Infrastructure.HouseManagementServiceAsync.SupplyResourceContractTypePeriodStart
                                            {
                                                StartDate = 1,
                                            },
                                            End = new Infrastructure.HouseManagementServiceAsync.SupplyResourceContractTypePeriodEnd
                                            {
                                                EndDate = -1,
                                            }
                                        },
                                        Item1 = true,
                                        IsPlannedVolume = false,
                                        ContractSubject = new Infrastructure.HouseManagementServiceAsync.SupplyResourceContractTypeContractSubject[]
                                        {
                                        new Infrastructure.HouseManagementServiceAsync.SupplyResourceContractTypeContractSubject
                                        {
                                            ServiceType = new Infrastructure.HouseManagementServiceAsync.ContractSubjectTypeServiceType
                                            {
                                                Code = "4",
                                                GUID ="f7e7c7ca-78cf-41ba-9d13-622ee263f064",
                                            },
                                            MunicipalResource = new Infrastructure.HouseManagementServiceAsync.ContractSubjectTypeMunicipalResource
                                            {
                                                Code = "8",
                                                GUID = "b9f4e15e-9c64-4509-9bd1-669b5eac498e",
                                            },
                                            TransportGUID = GUIDPairT,
                                            StartSupplyDate = Convert.ToDateTime(ABON.Rows[i][1]),
                                            EndSupplyDate = new DateTime(2100,1,1),
                                        }
                                        },
                                        CountingResource = Infrastructure.HouseManagementServiceAsync.SupplyResourceContractTypeCountingResource.R,
                                        CountingResourceSpecified = true,
                                        ContractBase = new Infrastructure.HouseManagementServiceAsync.nsiRef
PairKey = GUIDPairT, TransportGUID = GUIDPairT, вот это у Вас одно значение?
@mkpmkp это мой рабочий код
mkpmkp
@mkpmkp
Feb 21 2017 03:37
Пары "отмечены" правильным TransportGUID . Часовой пояс у Вас какой?
        // Услуги по объектам обслуживания
        DRSO_ObjectAddress = new SupplyResourceContractTypeObjectAddress[DRSO_Objects.Length];
        for (int i = 0; i < DRSO_Objects.Length; i++) {
            DRSO_ObjectAddress[i] = new SupplyResourceContractTypeObjectAddress() {
                TransportGUID = Guid.NewGuid().ToString(),
                FIASHouseGuid = DRSO_Objects[i].FIAS,
                Pair = new SupplyResourceContractTypeObjectAddressPair[DRSO_ContractSubject.Length]
            };
            if (DRSO_Objects[i].ResidentialPermices != null && DRSO_Objects[i].ResidentialPermices.Length > 0) {
                DRSO_ObjectAddress[i].ApartmentNumber = DRSO_Objects[i].ResidentialPermices[0].nkv;
            } else if (DRSO_Objects[i].NonResidentialPermices != null && DRSO_Objects[i].NonResidentialPermices.Length > 0) {
                DRSO_ObjectAddress[i].ApartmentNumber = DRSO_Objects[i].NonResidentialPermices[0].nzap;
            }
            for(int j = 0; j < DRSO_ContractSubject.Length; j++) {
                DRSO_ObjectAddress[i].Pair[j] = new SupplyResourceContractTypeObjectAddressPair {
                    PairKey = DRSO_ContractSubject[j].TransportGUID,
                    StartSupplyDate = DRSO_ContractSubject[j].StartSupplyDate, //.AddMinutes(1),
                    EndSupplyDate = DRSO_ContractSubject[j].EndSupplyDate, //.AddMinutes(-1),
                    HeatingSystemType = new SupplyResourceContractTypeObjectAddressPairHeatingSystemType {
                        OpenOrNot = (DRSO_Objects[i].GVS_scheme == 1) ? SupplyResourceContractTypeObjectAddressPairHeatingSystemTypeOpenOrNot.Closed : SupplyResourceContractTypeObjectAddressPairHeatingSystemTypeOpenOrNot.Opened,
                        CentralizedOrNot = (DRSO_Objects[i].B_Centralised == 1) ? SupplyResourceContractTypeObjectAddressPairHeatingSystemTypeCentralizedOrNot.Centralized : SupplyResourceContractTypeObjectAddressPairHeatingSystemTypeCentralizedOrNot.Decentralized
                    }
                };
            }
        }
mkpmkp
@mkpmkp
Feb 21 2017 03:42
Я заслал запрос в СС с XML-ями где все даты одинаковые... Жду от гениев гениальный отмаз.
Игорь Радченко
@DeathmentGD_twitter
Feb 21 2017 03:52
Новокузнецк
там по справочнику мы выделены в свой (+7)
просто сам пояс же тут не фигурирует нигде
mkpmkp
@mkpmkp
Feb 21 2017 03:54
Однако пишут что дата 2009-06-01 меньше даты 2009-06-01
У нас Томск - тоже +7
В обратную стороны DateTime отличается то на 3 то на 4 часа - тоесть даже перевод на летнее/зимнее время учитывают
Игорь Радченко
@DeathmentGD_twitter
Feb 21 2017 03:59
@mkpmkp вопрос на засыпку... Вы сначала загрузили договора, потом их выгрузили, и используя этот массив добавляете ресурсы?
mkpmkp
@mkpmkp
Feb 21 2017 04:00
нет. Загрузили. Потом Загружаем повторно. Типа переписываем
Отлаживаемся
Игорь Радченко
@DeathmentGD_twitter
Feb 21 2017 04:01
@mkpmkp могу предложить вариант при повторной загрузке заного указать StartSupplyDate, для договора
mkpmkp
@mkpmkp
Feb 21 2017 04:01
Договор засылается одним XML весь. Все даты внутри указаны. Если только они сравнивают с датами из старой загрузки
Игорь Радченко
@DeathmentGD_twitter
Feb 21 2017 04:02
тогда StartSupplyDate дома будет сравниваться с датой из загрузки а не из базы
mkpmkp
@mkpmkp
Feb 21 2017 04:02
Говорим заново ВСЕ даты
Игорь Радченко
@DeathmentGD_twitter
Feb 21 2017 04:02
ну тогда у меня идей пока нету..
mkpmkp
@mkpmkp
Feb 21 2017 04:02
все даты ОДИНАКОВЫЕ
EffectiveDate, StartSupplyDate - берутся из одного поля
Это оферта
SigningDate нет
Игорь Радченко
@DeathmentGD_twitter
Feb 21 2017 04:04
так дело то не в эффективдате
StartSupplyDate = DRSO_ContractSubject[j].StartSupplyDate,
он на эту дату ругается
mkpmkp
@mkpmkp
Feb 21 2017 04:06
Эти даты одинаковые по всему запросу. Вместе с датой начала действия договора
        // Услуги пришли в XML
        try {
            var ContractSubjectsXMLDoc = new XmlDocument() {
                PreserveWhitespace = true
            };
            ContractSubjectsXMLDoc.LoadXml(tableReader["ContractSubjects"].ToString());
            int i = 0;
            foreach (XmlNode xmlNode in ContractSubjectsXMLDoc.DocumentElement.ChildNodes) {
                Array.Resize(ref DRSO_ContractSubject, i + 1);
                DRSO_ContractSubject[i] = new SupplyResourceContractTypeContractSubject() {
                    StartSupplyDate = DRSO_Date_Begin,
                    EndSupplyDate = DateTime.Parse("06.06.2079"),
                    MunicipalResource = new ContractSubjectTypeMunicipalResource {
                        Code = xmlNode.Attributes["MunicipalResourceCode"].Value,
                        GUID = xmlNode.Attributes["MunicipalResourceGUID"].Value,
                        Name = xmlNode.Attributes["MunicipalResourceName"].Value
                    },
                    ServiceType = new ContractSubjectTypeServiceType {
                        Code = xmlNode.Attributes["ServiceTypeCode"].Value,
                        GUID = xmlNode.Attributes["ServiceTypeGUID"].Value,
                        Name = xmlNode.Attributes["ServiceTypeName"].Value
                    },
                    TransportGUID = Guid.NewGuid().ToString()
                };
                i++;
            }
        } catch (Exception Ex) {
            if (Manager != null) Manager.Report("ErrorMessage", string.Format("{0}Разбор XML с услугами по ДРСО № {1} прошел с ошибкой: Ex: {2}", MessagePrefix, DRSO_LS_Number, Ex.Message));
            DRSO_ContractSubject = new SupplyResourceContractTypeContractSubject[0];
        }
@DeathmentGD_twitter Пришли пожалуйста XML с импортом договора на mastushkin_kp@tomskrts.ru для посмотреть как у вас сериализуются даты...
mkpmkp
@mkpmkp
Feb 21 2017 04:11
Если не сложно, разумеется :-)
Игорь Радченко
@DeathmentGD_twitter
Feb 21 2017 05:02
@mkpmkp оке
Игорь Радченко
@DeathmentGD_twitter
Feb 21 2017 05:08
@mkpmkp отправил, единственный ньюанс, это была единоразовая загрузка. т.е. повторно я не пробовал их прокидывать, но алгоритм использовал бы этот же
mkpmkp
@mkpmkp
Feb 21 2017 05:53
Спасибо - получил.
При повторном размещении, думаю, будет как у нас - проблема с датами :-(
Игорь Радченко
@DeathmentGD_twitter
Feb 21 2017 06:09
надо пробовать.... пока нету времени(
Syber79
@Syber79
Feb 21 2017 07:54
Никто не сталкивался с тем, что в кабинете у дома есть помещения, а при экспорте дома сервисами - все реестровые данные выдает, но помещений нет?
small-office
@small-office
Feb 21 2017 08:01
такого не встречал, но в кабинете порой начинаешь сомневаться, верить ли ему.. в пятницу показывал 624 дома в жилфонде, а в понедельник - 5 .. , ДРСО при выборе фильтра не все показывает и т.д. и т.п.
Syber79
@Syber79
Feb 21 2017 09:28
Еще вопрос...
В домах блокированной застройки на что создается ЛС?
Помещений и квартир как таковых то нет - есть блоки
А в запросе на создание ЛС - нет блока... Только помещение, квартира или дом
mkpmkp
@mkpmkp
Feb 21 2017 09:55
Продолжение по моему вопросу про даты. СС ответила "Указанная ошибка появляется потому что в договоре №330 на вкладке "Сведения о договоре" и "Объекты жилищного фонда", для адресов указанных в ошибке, стоит дата поставки начала ресурса 31.05.2009 (см. вложения), а в приложенном запросе указываете 01.06.2009.". То есть они не смотрят что я передаю НОВЫЕ даты. Они смотряд на то что было передано при создании договора. Это очень тонкое извращение. Как быть???