@diia-inhouse/providers 1.30.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENCE.md +287 -0
- package/README.md +93 -0
- package/dist/index.js +19 -0
- package/dist/index.js.map +1 -0
- package/dist/interfaces/providers/drrp/index.js +70 -0
- package/dist/interfaces/providers/drrp/index.js.map +1 -0
- package/dist/interfaces/providers/drrp/publicServiceDrrpExtGroup.js +3 -0
- package/dist/interfaces/providers/drrp/publicServiceDrrpExtGroup.js.map +1 -0
- package/dist/interfaces/providers/drrp/publicServiceDrrpExtSearch.js +43 -0
- package/dist/interfaces/providers/drrp/publicServiceDrrpExtSearch.js.map +1 -0
- package/dist/interfaces/providers/drrp/publicServiceDrrpGetActualAtu.js +3 -0
- package/dist/interfaces/providers/drrp/publicServiceDrrpGetActualAtu.js.map +1 -0
- package/dist/interfaces/providers/index.js +21 -0
- package/dist/interfaces/providers/index.js.map +1 -0
- package/dist/providers/drrp/index.js +373 -0
- package/dist/providers/drrp/index.js.map +1 -0
- package/dist/providers/index.js +18 -0
- package/dist/providers/index.js.map +1 -0
- package/dist/types/index.d.ts +2 -0
- package/dist/types/interfaces/providers/drrp/index.d.ts +168 -0
- package/dist/types/interfaces/providers/drrp/publicServiceDrrpExtGroup.d.ts +54 -0
- package/dist/types/interfaces/providers/drrp/publicServiceDrrpExtSearch.d.ts +144 -0
- package/dist/types/interfaces/providers/drrp/publicServiceDrrpGetActualAtu.d.ts +7 -0
- package/dist/types/interfaces/providers/index.d.ts +4 -0
- package/dist/types/providers/drrp/index.d.ts +41 -0
- package/dist/types/providers/index.d.ts +1 -0
- package/dist/types/validation/drrp/index.d.ts +7 -0
- package/dist/validation/drrp/index.js +26 -0
- package/dist/validation/drrp/index.js.map +1 -0
- package/package.json +78 -0
|
@@ -0,0 +1,373 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.DrrpProvider = void 0;
|
|
7
|
+
const lodash_1 = require("lodash");
|
|
8
|
+
const math_expression_evaluator_1 = __importDefault(require("math-expression-evaluator"));
|
|
9
|
+
const errors_1 = require("@diia-inhouse/errors");
|
|
10
|
+
const drrp_1 = require("../../interfaces/providers/drrp");
|
|
11
|
+
const publicServiceDrrpExtSearch_1 = require("../../interfaces/providers/drrp/publicServiceDrrpExtSearch");
|
|
12
|
+
const drrp_2 = require("../../validation/drrp");
|
|
13
|
+
class DrrpProvider {
|
|
14
|
+
logger;
|
|
15
|
+
external;
|
|
16
|
+
drrpConfig;
|
|
17
|
+
constructor(logger, external, drrpConfig = {}) {
|
|
18
|
+
this.logger = logger;
|
|
19
|
+
this.external = external;
|
|
20
|
+
this.drrpConfig = drrpConfig;
|
|
21
|
+
}
|
|
22
|
+
async getSubjectInfo(itn, ops = {}) {
|
|
23
|
+
const { isSuspend = false } = ops;
|
|
24
|
+
const request = {
|
|
25
|
+
isShowHistoricalNames: false,
|
|
26
|
+
isSuspend,
|
|
27
|
+
searchType: publicServiceDrrpExtSearch_1.DrrpSearchType.Subject,
|
|
28
|
+
subjectSearchInfo: {
|
|
29
|
+
sbjType: '1',
|
|
30
|
+
sbjCode: itn,
|
|
31
|
+
},
|
|
32
|
+
};
|
|
33
|
+
const response = await this.makeExtSearchRequest(request, ops);
|
|
34
|
+
if ('error' in response) {
|
|
35
|
+
const { error } = response;
|
|
36
|
+
const errorMsg = 'Failed to retrieve subject data from the drrp registry';
|
|
37
|
+
this.logger.error(errorMsg, error);
|
|
38
|
+
throw new errors_1.ServiceUnavailableError(errorMsg);
|
|
39
|
+
}
|
|
40
|
+
const { reportResultID, groupResult } = response;
|
|
41
|
+
return { reportResultID, groupResult };
|
|
42
|
+
}
|
|
43
|
+
async getSubjectInfoClarifying(reportResultId, groupId, ops = {}) {
|
|
44
|
+
const request = {
|
|
45
|
+
entity: 'rrpExch_external',
|
|
46
|
+
method: 'generate',
|
|
47
|
+
reportResultID: reportResultId,
|
|
48
|
+
groupID: groupId,
|
|
49
|
+
};
|
|
50
|
+
const response = await this.request(drrp_1.ExternalEvent.PublicServiceDrrpExtGroup, request, {
|
|
51
|
+
validationRules: drrp_2.drrpExtGroupResultValidationSchema,
|
|
52
|
+
...ops,
|
|
53
|
+
});
|
|
54
|
+
let result;
|
|
55
|
+
try {
|
|
56
|
+
if (!response) {
|
|
57
|
+
throw new Error('Failed to fetch DrrpExtGroup');
|
|
58
|
+
}
|
|
59
|
+
result = JSON.parse(response.resultData);
|
|
60
|
+
}
|
|
61
|
+
catch (err) {
|
|
62
|
+
const errorMsg = 'Failed to parse clarifying subject result data from the drrp registry';
|
|
63
|
+
this.logger.error(errorMsg, { err, response });
|
|
64
|
+
throw new errors_1.ServiceUnavailableError(errorMsg);
|
|
65
|
+
}
|
|
66
|
+
const { error, realty, oldRealty } = result;
|
|
67
|
+
if (error) {
|
|
68
|
+
const errorMsg = 'Failed to retrieve clarifying subject data from the drrp registry';
|
|
69
|
+
this.logger.error(errorMsg, error);
|
|
70
|
+
throw new errors_1.ServiceUnavailableError(errorMsg);
|
|
71
|
+
}
|
|
72
|
+
return { realty, oldRealty };
|
|
73
|
+
}
|
|
74
|
+
async getObjectInfo(realtyId, ops = {}) {
|
|
75
|
+
const { isSuspend = false } = ops;
|
|
76
|
+
const request = {
|
|
77
|
+
isShowHistoricalNames: false,
|
|
78
|
+
isSuspend,
|
|
79
|
+
searchType: publicServiceDrrpExtSearch_1.DrrpSearchType.Object,
|
|
80
|
+
objectSearchInfo: {
|
|
81
|
+
realtyRnNum: realtyId,
|
|
82
|
+
},
|
|
83
|
+
};
|
|
84
|
+
const response = await this.makeExtSearchRequest(request, ops);
|
|
85
|
+
const [realty] = response.realty;
|
|
86
|
+
if (!realty) {
|
|
87
|
+
return;
|
|
88
|
+
}
|
|
89
|
+
return realty;
|
|
90
|
+
}
|
|
91
|
+
async getActualAtuId(atuId, ops = {}) {
|
|
92
|
+
const request = {
|
|
93
|
+
atuID: atuId,
|
|
94
|
+
};
|
|
95
|
+
const response = await this.request(drrp_1.ExternalEvent.PublicServiceDrrpGetActualAtu, request, {
|
|
96
|
+
validationRules: drrp_2.drrpActualAtuValidationSchema,
|
|
97
|
+
...ops,
|
|
98
|
+
});
|
|
99
|
+
if (!response) {
|
|
100
|
+
return atuId;
|
|
101
|
+
}
|
|
102
|
+
const { actualAtuID } = response;
|
|
103
|
+
if (!actualAtuID) {
|
|
104
|
+
return atuId;
|
|
105
|
+
}
|
|
106
|
+
const result = (0, lodash_1.max)(actualAtuID);
|
|
107
|
+
return result ?? atuId;
|
|
108
|
+
}
|
|
109
|
+
async getActualAtuIds(atuId, ops = {}) {
|
|
110
|
+
const request = {
|
|
111
|
+
atuID: atuId,
|
|
112
|
+
};
|
|
113
|
+
const response = await this.request(drrp_1.ExternalEvent.PublicServiceDrrpGetActualAtu, request, {
|
|
114
|
+
validationRules: drrp_2.drrpActualAtuValidationSchema,
|
|
115
|
+
...ops,
|
|
116
|
+
});
|
|
117
|
+
if (!response) {
|
|
118
|
+
return [atuId];
|
|
119
|
+
}
|
|
120
|
+
const { actualAtuID } = response;
|
|
121
|
+
if (!actualAtuID?.length) {
|
|
122
|
+
return [atuId];
|
|
123
|
+
}
|
|
124
|
+
return actualAtuID;
|
|
125
|
+
}
|
|
126
|
+
/** @deprecated use getOwnershipType */
|
|
127
|
+
isSoleOwner(owners) {
|
|
128
|
+
if (owners.length === 0) {
|
|
129
|
+
return false;
|
|
130
|
+
}
|
|
131
|
+
const ownersRnokpp = owners.map((owner) => owner.subjects.at(0)?.sbjCode).filter(Boolean);
|
|
132
|
+
const uniqOwners = (0, lodash_1.uniq)(ownersRnokpp);
|
|
133
|
+
if (uniqOwners.length !== 1) {
|
|
134
|
+
return false;
|
|
135
|
+
}
|
|
136
|
+
const [{ prCommonKind }] = owners;
|
|
137
|
+
if (!prCommonKind || prCommonKind === drrp_1.PropertyCommonKind.CommonShared) {
|
|
138
|
+
return true;
|
|
139
|
+
}
|
|
140
|
+
if (prCommonKind === drrp_1.PropertyCommonKind.CommonPartial) {
|
|
141
|
+
return this.countPartSizeSum(owners) >= 1;
|
|
142
|
+
}
|
|
143
|
+
return false;
|
|
144
|
+
}
|
|
145
|
+
/** @deprecated use isInvalidOwnersData */
|
|
146
|
+
checkOwnersShares(owners) {
|
|
147
|
+
if (owners.length === 0) {
|
|
148
|
+
return false;
|
|
149
|
+
}
|
|
150
|
+
const [{ prCommonKind }] = owners;
|
|
151
|
+
if (!prCommonKind || prCommonKind === drrp_1.PropertyCommonKind.CommonShared) {
|
|
152
|
+
return true;
|
|
153
|
+
}
|
|
154
|
+
if (prCommonKind === drrp_1.PropertyCommonKind.CommonPartial) {
|
|
155
|
+
const partSizesSum = this.countPartSizeSum(owners);
|
|
156
|
+
this.logger.info(`Owners part sizes sum: ${partSizesSum}`);
|
|
157
|
+
return partSizesSum >= 1;
|
|
158
|
+
}
|
|
159
|
+
throw new errors_1.InternalServerError(`Unexpected property common kind: ${prCommonKind}`);
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* @see {@link https://diia.atlassian.net/wiki/spaces/DIIA/pages/1283620916/BRD.036001002.+.v.01.001#5.2.1-%D0%86%D0%BD%D1%84%D0%BE%D1%80%D0%BC%D1%83%D0%B2%D0%B0%D0%BD%D0%BD%D1%8F-%D0%BA%D0%BE%D1%80%D0%B8%D1%81%D1%82%D1%83%D0%B2%D0%B0%D1%87%D0%B0-%D0%BF%D1%80%D0%BE-%D0%BD%D0%B5%D0%BC%D0%BE%D0%B6%D0%BB%D0%B8%D0%B2%D1%96%D1%81%D1%82%D1%8C-%D0%BF%D0%BE%D0%B4%D0%B0%D1%87%D1%96-%D0%B7%D0%B0%D1%8F%D0%B2%D0%B8%2C-%D1%87%D0%B5%D1%80%D0%B5%D0%B7-%D0%B2%D1%96%D0%B4%D1%81%D1%83%D1%82%D0%BD%D1%96%D1%81%D1%82%D1%8C-%D0%B2-%D0%94%D0%A0%D0%A0%D0%9F-%D0%B2%D1%96%D0%B4%D0%BE%D0%BC%D0%BE%D1%81%D1%82%D0%B5%D0%B9%2C-%D1%89%D0%BE%D0%B4%D0%BE-%D0%B2%D1%81%D1%96%D1%85-%D1%81%D0%BF%D1%96%D0%B2%D0%B2%D0%BB%D0%B0%D1%81%D0%BD%D0%B8%D0%BA%D1%96%D0%B2 documentation page}
|
|
163
|
+
*/
|
|
164
|
+
isInvalidOwnersData(realty) {
|
|
165
|
+
const { properties } = realty;
|
|
166
|
+
const partSizesSum = this.countPartSizeSum(properties);
|
|
167
|
+
if (properties.length === 1) {
|
|
168
|
+
const [{ partSize, subjects, prCommonKind }] = properties;
|
|
169
|
+
// 1
|
|
170
|
+
if (partSize &&
|
|
171
|
+
partSizesSum !== 1 &&
|
|
172
|
+
subjects.length === 1 &&
|
|
173
|
+
(!prCommonKind || prCommonKind === drrp_1.PropertyCommonKind.CommonPartial)) {
|
|
174
|
+
this.logger.info('Invalid drrp data: partSize not equal 1', { partSizesSum });
|
|
175
|
+
return true;
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
else {
|
|
179
|
+
const isAllCommonPartial = properties.every(({ prCommonKind, partSize }) => {
|
|
180
|
+
return partSize && prCommonKind === drrp_1.PropertyCommonKind.CommonPartial;
|
|
181
|
+
});
|
|
182
|
+
// 2
|
|
183
|
+
if (isAllCommonPartial && partSizesSum !== 1) {
|
|
184
|
+
this.logger.info('Invalid drrp data: partSizes not equal 1', { partSizesSum });
|
|
185
|
+
return true;
|
|
186
|
+
}
|
|
187
|
+
const hasMissingPartSizes = properties.some(({ prCommonKind, partSize }) => {
|
|
188
|
+
return !partSize && prCommonKind === drrp_1.PropertyCommonKind.CommonPartial;
|
|
189
|
+
});
|
|
190
|
+
// 2
|
|
191
|
+
if (hasMissingPartSizes) {
|
|
192
|
+
this.logger.info('Invalid drrp data: has properties with missing partSize');
|
|
193
|
+
return true;
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
const hasNonIndividualSubjects = properties.some(({ subjects }) => subjects.some(({ dcSbjType }) => dcSbjType !== drrp_1.DcSbjType.Individual));
|
|
197
|
+
if (hasNonIndividualSubjects) {
|
|
198
|
+
this.logger.info('Invalid drrp data: properties contain non-individual subjects');
|
|
199
|
+
return true;
|
|
200
|
+
}
|
|
201
|
+
// children individual may not have sbjCode
|
|
202
|
+
const hasIndividualSubjectsWithoutSbjCode = properties.some(({ subjects }) => subjects.some(({ dcSbjType, sbjCode }) => dcSbjType === drrp_1.DcSbjType.Individual && !sbjCode));
|
|
203
|
+
if (hasIndividualSubjectsWithoutSbjCode) {
|
|
204
|
+
this.logger.info('Invalid drrp data: properties contain individual subjects without sbjCode');
|
|
205
|
+
return true;
|
|
206
|
+
}
|
|
207
|
+
return false;
|
|
208
|
+
}
|
|
209
|
+
extractIndividualOwners(realty) {
|
|
210
|
+
const owners = (0, lodash_1.flatMap)(realty.properties, (property) => {
|
|
211
|
+
const { rnNum, partSize, prCommonKind, subjects } = property;
|
|
212
|
+
return subjects
|
|
213
|
+
.filter((item) => item.dcSbjType === drrp_1.DcSbjType.Individual && Boolean(item.sbjCode))
|
|
214
|
+
.map(({ sbjName, sbjCode }) => ({
|
|
215
|
+
fullName: sbjName,
|
|
216
|
+
rnokpp: sbjCode,
|
|
217
|
+
rnNum,
|
|
218
|
+
partSize,
|
|
219
|
+
prCommonKind,
|
|
220
|
+
}));
|
|
221
|
+
});
|
|
222
|
+
return owners;
|
|
223
|
+
}
|
|
224
|
+
getOwnershipType(realty, itn, invalidDataProcessCode) {
|
|
225
|
+
const { properties } = realty;
|
|
226
|
+
if (this.isSingleOwnershipType(properties, itn)) {
|
|
227
|
+
return drrp_1.OwnershipType.Single;
|
|
228
|
+
}
|
|
229
|
+
if (this.isCommonPartialOwnershipType(properties, itn)) {
|
|
230
|
+
return drrp_1.OwnershipType.CommonPartial;
|
|
231
|
+
}
|
|
232
|
+
if (this.isCommonSharedOwnershipType(properties, itn)) {
|
|
233
|
+
return drrp_1.OwnershipType.CommonShared;
|
|
234
|
+
}
|
|
235
|
+
this.logger.error('Failed to determine ownership type', { properties });
|
|
236
|
+
throw new errors_1.InternalServerError('Failed to determine ownership type', invalidDataProcessCode, errors_1.ErrorType.Operated);
|
|
237
|
+
}
|
|
238
|
+
/**
|
|
239
|
+
* @see {@link https://diia.atlassian.net/wiki/spaces/DIIA/pages/1283620916/BRD.036001002.+.v.01.001#5.3.2-%D0%92%D0%B8%D0%B7%D0%BD%D0%B0%D1%87%D0%B5%D0%BD%D0%BD%D1%8F%2C-%D1%89%D0%BE-%D0%B7%D0%B0%D1%8F%D0%B2%D0%BD%D0%B8%D0%BA-%D1%94-%D0%BE%D0%B4%D0%BD%D0%BE%D0%BE%D1%81%D1%96%D0%B1%D0%BD%D0%B8%D0%BC-%D0%B2%D0%BB%D0%B0%D1%81%D0%BD%D0%B8%D0%BA%D0%BE%D0%BC-%D0%BE%D0%B1%D1%80%D0%B0%D0%BD%D0%BE%D0%B3%D0%BE-%D0%BE%D0%B1%CA%BC%D1%94%D0%BA%D1%82%D0%B0-%D0%BD%D0%B5%D1%80%D1%83%D1%85%D0%BE%D0%BC%D0%BE%D1%81%D1%82%D1%96 documentation page}
|
|
240
|
+
*/
|
|
241
|
+
isSingleOwnershipType(properties, itn) {
|
|
242
|
+
const partSizesSum = this.countPartSizeSum(properties);
|
|
243
|
+
if (properties.length === 1) {
|
|
244
|
+
const [{ prCommonKind, partSize, subjects }] = properties;
|
|
245
|
+
const hasUserWithoutCoOwners = subjects.length === 1 && subjects[0].sbjCode === itn;
|
|
246
|
+
// 1
|
|
247
|
+
if (partSizesSum === 1 && hasUserWithoutCoOwners && (!prCommonKind || prCommonKind === drrp_1.PropertyCommonKind.CommonPartial)) {
|
|
248
|
+
return true;
|
|
249
|
+
}
|
|
250
|
+
// 3
|
|
251
|
+
if (!partSize && hasUserWithoutCoOwners && (!prCommonKind || prCommonKind === drrp_1.PropertyCommonKind.CommonPartial)) {
|
|
252
|
+
return true;
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
else {
|
|
256
|
+
const isSingleSubject = properties.every(({ prCommonKind, partSize, subjects }) => {
|
|
257
|
+
const isUserSingleSubject = subjects.length === 1 && subjects[0].sbjCode === itn;
|
|
258
|
+
return partSize && isUserSingleSubject && prCommonKind === drrp_1.PropertyCommonKind.CommonPartial;
|
|
259
|
+
});
|
|
260
|
+
// 2
|
|
261
|
+
if (partSizesSum === 1 && isSingleSubject) {
|
|
262
|
+
return true;
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
return false;
|
|
266
|
+
}
|
|
267
|
+
/**
|
|
268
|
+
* @see {@link https://diia.atlassian.net/wiki/spaces/DIIA/pages/1283620916/BRD.036001002.+.v.01.001#5.3.3-%D0%92%D1%96%D0%B4%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%BD%D1%8F-%D0%B5%D0%BA%D1%80%D0%B0%D0%BD%D0%B0-%E2%80%9C%D0%A1%D0%BF%D1%96%D0%B2%D0%B2%D0%BB%D0%B0%D1%81%D0%BD%D0%B8%D0%BA%D0%B8-%D0%BC%D0%B0%D0%B9%D0%BD%D0%B0%E2%80%9C--%D1%83-%D1%81%D1%82%D0%B0%D0%BD%D1%96-%D0%BF%D1%96%D0%B4%D1%82%D0%B2%D0%B5%D1%80%D0%B4%D0%B6%D0%B5%D0%BD%D0%BD%D1%8F-%D0%BF%D0%B5%D1%80%D0%B5%D0%BB%D1%96%D0%BA%D1%83-%D1%81%D0%BF%D1%96%D0%B2%D0%B2%D0%BB%D0%B0%D1%81%D0%BD%D0%B8%D0%BA%D1%96%D0%B2-%D0%BC%D0%B0%D0%B9%D0%BD%D0%B0 documentation page}
|
|
269
|
+
*/
|
|
270
|
+
isCommonSharedOwnershipType(properties, itn) {
|
|
271
|
+
const uniqueItns = new Set((0, lodash_1.flatMap)(properties.map(({ subjects }) => subjects.map(({ sbjCode }) => sbjCode))));
|
|
272
|
+
const hasUserWithCoOwners = uniqueItns.size > 1 && uniqueItns.has(itn);
|
|
273
|
+
if (properties.length === 1) {
|
|
274
|
+
const [{ prCommonKind }] = properties;
|
|
275
|
+
// 1
|
|
276
|
+
if (hasUserWithCoOwners && prCommonKind === drrp_1.PropertyCommonKind.CommonShared) {
|
|
277
|
+
return true;
|
|
278
|
+
}
|
|
279
|
+
}
|
|
280
|
+
else {
|
|
281
|
+
const isAllCommonShared = properties.every(({ prCommonKind, subjects }) => {
|
|
282
|
+
const isCommonShared = subjects.length > 0 && prCommonKind === drrp_1.PropertyCommonKind.CommonShared;
|
|
283
|
+
return isCommonShared;
|
|
284
|
+
});
|
|
285
|
+
// 2
|
|
286
|
+
if (isAllCommonShared && hasUserWithCoOwners) {
|
|
287
|
+
return true;
|
|
288
|
+
}
|
|
289
|
+
const commonSharedProperties = properties.filter(({ prCommonKind, subjects }) => {
|
|
290
|
+
const isCommonShared = subjects.length > 0 && prCommonKind === drrp_1.PropertyCommonKind.CommonShared;
|
|
291
|
+
return isCommonShared;
|
|
292
|
+
});
|
|
293
|
+
const commonPartialProperties = properties.filter(({ prCommonKind, partSize, subjects }) => {
|
|
294
|
+
const isCommonPartial = subjects.length === 1 && prCommonKind === drrp_1.PropertyCommonKind.CommonPartial && partSize;
|
|
295
|
+
return isCommonPartial;
|
|
296
|
+
});
|
|
297
|
+
const commonPartialPartSizesSum = this.countPartSizeSum(commonPartialProperties);
|
|
298
|
+
const isAllCommonSharedOrCommonPartial = commonSharedProperties.length + commonPartialProperties.length === properties.length;
|
|
299
|
+
// 3
|
|
300
|
+
if (commonPartialPartSizesSum < 1 && isAllCommonSharedOrCommonPartial && hasUserWithCoOwners) {
|
|
301
|
+
return true;
|
|
302
|
+
}
|
|
303
|
+
}
|
|
304
|
+
return false;
|
|
305
|
+
}
|
|
306
|
+
/**
|
|
307
|
+
* @see {@link https://diia.atlassian.net/wiki/spaces/DIIA/pages/1283620916/BRD.036001002.+.v.01.001#5.3.4-%D0%92%D1%96%D0%B4%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%BD%D1%8F-%D0%B5%D0%BA%D1%80%D0%B0%D0%BD%D0%B0-%E2%80%9C%D0%A1%D0%BF%D1%96%D0%B2%D0%B2%D0%BB%D0%B0%D1%81%D0%BD%D0%B8%D0%BA%D0%B8-%D0%BC%D0%B0%D0%B9%D0%BD%D0%B0%E2%80%9C--%D1%83-%D1%81%D1%82%D0%B0%D0%BD%D1%96-%D0%B2%D0%B8%D0%B1%D0%BE%D1%80%D1%83-%D1%82%D0%B8%D0%BF%D0%B0-%D0%B7%D0%B0%D1%8F%D0%B2%D0%B8-(%D0%BE%D0%B4%D0%BD%D0%BE%D0%BE%D1%81%D1%96%D0%B1%D0%BD%D0%B0-%D0%B0%D0%B1%D0%BE-%D1%81%D0%BF%D1%96%D0%BB%D1%8C%D0%BD%D0%B0) documentation page}
|
|
308
|
+
*/
|
|
309
|
+
isCommonPartialOwnershipType(properties, itn) {
|
|
310
|
+
const partSizesSum = this.countPartSizeSum(properties);
|
|
311
|
+
const uniqueItns = new Set((0, lodash_1.flatMap)(properties.map(({ subjects }) => subjects.map(({ sbjCode }) => sbjCode))));
|
|
312
|
+
const hasUserWithCoOwners = uniqueItns.size > 1 && uniqueItns.has(itn);
|
|
313
|
+
if (properties.length > 1) {
|
|
314
|
+
const isAllCommonPartial = properties.every(({ prCommonKind, partSize, subjects }) => {
|
|
315
|
+
const isSingleSubject = subjects.length === 1;
|
|
316
|
+
return partSize && isSingleSubject && prCommonKind === drrp_1.PropertyCommonKind.CommonPartial;
|
|
317
|
+
});
|
|
318
|
+
// 1
|
|
319
|
+
if (partSizesSum === 1 && isAllCommonPartial && hasUserWithCoOwners) {
|
|
320
|
+
return true;
|
|
321
|
+
}
|
|
322
|
+
}
|
|
323
|
+
return false;
|
|
324
|
+
}
|
|
325
|
+
countPartSizeSum(owners) {
|
|
326
|
+
if (owners.length === 0) {
|
|
327
|
+
return 0;
|
|
328
|
+
}
|
|
329
|
+
const partSizes = owners.map(({ partSize }) => partSize).filter(Boolean);
|
|
330
|
+
if (partSizes.length === 0) {
|
|
331
|
+
return 0;
|
|
332
|
+
}
|
|
333
|
+
const mexp = new math_expression_evaluator_1.default();
|
|
334
|
+
const partSizesSum = mexp.eval(partSizes.join('+'), [], {});
|
|
335
|
+
return partSizesSum;
|
|
336
|
+
}
|
|
337
|
+
async makeExtSearchRequest(searchParams, ops = {}) {
|
|
338
|
+
const request = {
|
|
339
|
+
entity: 'rrpExch_external',
|
|
340
|
+
method: 'search',
|
|
341
|
+
searchParams,
|
|
342
|
+
};
|
|
343
|
+
const response = await this.request(drrp_1.ExternalEvent.PublicServiceDrrpExtSearch, request, {
|
|
344
|
+
validationRules: drrp_2.drrpExtSearchResultValidationSchema,
|
|
345
|
+
timeout: this.drrpConfig.extSearchTimeout,
|
|
346
|
+
...ops,
|
|
347
|
+
});
|
|
348
|
+
try {
|
|
349
|
+
if (!response) {
|
|
350
|
+
throw new Error('Failed to makeRequest');
|
|
351
|
+
}
|
|
352
|
+
return JSON.parse(response.resultData);
|
|
353
|
+
}
|
|
354
|
+
catch (err) {
|
|
355
|
+
const errorMsg = 'Failed to parse result data from the drrp registry';
|
|
356
|
+
this.logger.error(errorMsg, { err, response });
|
|
357
|
+
throw new errors_1.ServiceUnavailableError(errorMsg);
|
|
358
|
+
}
|
|
359
|
+
}
|
|
360
|
+
async request(event, request, ops) {
|
|
361
|
+
try {
|
|
362
|
+
return await this.external.receiveDirect(event, request, { timeout: this.drrpConfig.timeout, ...ops });
|
|
363
|
+
}
|
|
364
|
+
catch (err) {
|
|
365
|
+
this.logger.error('Failed to request drrp', { err });
|
|
366
|
+
const unavailableProcessCode = ops?.unavailableProcessCode || this.drrpConfig.unavailableProcessCode;
|
|
367
|
+
const errorType = unavailableProcessCode ? errors_1.ErrorType.Operated : errors_1.ErrorType.Unoperated;
|
|
368
|
+
throw new errors_1.ServiceUnavailableError('Drrp service is unavailable', unavailableProcessCode, errorType);
|
|
369
|
+
}
|
|
370
|
+
}
|
|
371
|
+
}
|
|
372
|
+
exports.DrrpProvider = DrrpProvider;
|
|
373
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/providers/drrp/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./drrp"), exports);
|
|
18
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAsB"}
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
export declare enum RealtyType {
|
|
2
|
+
PrivateHouse = "\u0436\u0438\u0442\u043B\u043E\u0432\u0438\u0439 \u0431\u0443\u0434\u0438\u043D\u043E\u043A",
|
|
3
|
+
Apartment = "\u043A\u0432\u0430\u0440\u0442\u0438\u0440\u0430",
|
|
4
|
+
LivingSpace = "\u0436\u0438\u0442\u043B\u043E\u0432\u0435 \u043F\u0440\u0438\u043C\u0456\u0449\u0435\u043D\u043D\u044F",
|
|
5
|
+
Building = "\u0431\u0443\u0434\u0456\u0432\u043B\u044F",
|
|
6
|
+
LinearInfrastructureObject = "\u043B\u0456\u043D\u0456\u0439\u043D\u0438\u0439 \u043E\u0431'\u0454\u043A\u0442 \u0456\u043D\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043A\u0442\u0443\u0440\u0438",
|
|
7
|
+
UnfinishedConstruction = "\u043D\u0435\u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043D\u0435 \u0431\u0443\u0434\u0456\u0432\u043D\u0438\u0446\u0442\u0432\u043E",
|
|
8
|
+
Hostel = "\u0433\u0443\u0440\u0442\u043E\u0436\u0438\u0442\u043E\u043A",
|
|
9
|
+
Structure = "\u0441\u043F\u043E\u0440\u0443\u0434\u0430",
|
|
10
|
+
NonLivingSpace = "\u043D\u0435\u0436\u0438\u0442\u043B\u043E\u0432\u0435 \u043F\u0440\u0438\u043C\u0456\u0449\u0435\u043D\u043D\u044F",
|
|
11
|
+
ApartmentBuilding = "\u0431\u0430\u0433\u0430\u0442\u043E\u043A\u0432\u0430\u0440\u0442\u0438\u0440\u043D\u0438\u0439 \u0431\u0443\u0434\u0438\u043D\u043E\u043A",
|
|
12
|
+
CountryHouse = "\u0434\u0430\u0447\u043D\u0438\u0439 \u0431\u0443\u0434\u0438\u043D\u043E\u043A",
|
|
13
|
+
GardenHouse = "\u0441\u0430\u0434\u043E\u0432\u0438\u0439 \u0431\u0443\u0434\u0438\u043D\u043E\u043A",
|
|
14
|
+
Farmstead = "\u0441\u0430\u0434\u0438\u0431\u0430",
|
|
15
|
+
LandPlot = "\u0437\u0435\u043C\u0435\u043B\u044C\u043D\u0430 \u0434\u0456\u043B\u044F\u043D\u043A\u0430",
|
|
16
|
+
SinglePropertyComplex = "\u0454\u0434\u0438\u043D\u0438\u0439 \u043C\u0430\u0439\u043D\u043E\u0432\u0438\u0439 \u043A\u043E\u043C\u043F\u043B\u0435\u043A\u0441",
|
|
17
|
+
IntegralPropertyComplex = "\u0446\u0456\u043B\u0456\u0441\u043D\u0438\u0439 \u043C\u0430\u0439\u043D\u043E\u0432\u0438\u0439 \u043A\u043E\u043C\u043F\u043B\u0435\u043A\u0441",
|
|
18
|
+
Parking = "\u043C\u0430\u0448\u0438\u043D\u043E\u043C\u0456\u0441\u0446\u0435/\u043F\u0430\u0440\u043A\u043E\u043C\u0456\u0441\u0446\u0435",
|
|
19
|
+
Garage = "\u0433\u0430\u0440\u0430\u0436\u043D\u0438\u0439 \u0431\u043E\u043A\u0441",
|
|
20
|
+
Quartets = "\u043F\u0440\u0438\u043C\u0456\u0449\u0435\u043D\u043D\u044F",
|
|
21
|
+
Room = "\u043A\u0456\u043C\u043D\u0430\u0442\u0430",
|
|
22
|
+
LivingGardenHouse = "\u0436\u0438\u0442\u043B\u043E\u0432\u0438\u0439 \u0431\u0443\u0434\u0438\u043D\u043E\u043A \u0441\u0430\u0434\u0438\u0431\u043D\u043E\u0433\u043E \u0442\u0438\u043F\u0443"
|
|
23
|
+
}
|
|
24
|
+
export declare enum RealtyState {
|
|
25
|
+
Active = "\u0437\u0430\u0440\u0435\u0454\u0441\u0442\u0440\u043E\u0432\u0430\u043D\u043E",
|
|
26
|
+
Closed = "\u0437\u0430\u043A\u0440\u0438\u0442\u043E",
|
|
27
|
+
Aborted = "\u0441\u043A\u0430\u0441\u043E\u0432\u0430\u043D\u043E/\u0430\u043D\u0443\u043B\u044C\u043E\u0432\u0430\u043D\u043E"
|
|
28
|
+
}
|
|
29
|
+
export declare enum PropertyState {
|
|
30
|
+
Active = "\u0437\u0430\u0440\u0435\u0454\u0441\u0442\u0440\u043E\u0432\u0430\u043D\u043E",
|
|
31
|
+
Stopped = "\u043F\u0440\u0438\u043F\u0438\u043D\u0435\u043D\u043E",
|
|
32
|
+
Repaid = "\u043F\u043E\u0433\u0430\u0448\u0435\u043D\u043E",
|
|
33
|
+
Aborted = "\u0441\u043A\u0430\u0441\u043E\u0432\u0430\u043D\u043E/\u0430\u043D\u0443\u043B\u044C\u043E\u0432\u0430\u043D\u043E"
|
|
34
|
+
}
|
|
35
|
+
export declare enum MortgageState {
|
|
36
|
+
Active = "\u0437\u0430\u0440\u0435\u0454\u0441\u0442\u0440\u043E\u0432\u0430\u043D\u043E",
|
|
37
|
+
Stopped = "\u043F\u0440\u0438\u043F\u0438\u043D\u0435\u043D\u043E",
|
|
38
|
+
Repaid = "\u043F\u043E\u0433\u0430\u0448\u0435\u043D\u043E",
|
|
39
|
+
Aborted = "\u0441\u043A\u0430\u0441\u043E\u0432\u0430\u043D\u043E/\u0430\u043D\u0443\u043B\u044C\u043E\u0432\u0430\u043D\u043E"
|
|
40
|
+
}
|
|
41
|
+
export declare enum PropertyCommonKind {
|
|
42
|
+
CommonShared = "\u0441\u043F\u0456\u043B\u044C\u043D\u0430 \u0441\u0443\u043C\u0456\u0441\u043D\u0430",
|
|
43
|
+
CommonPartial = "\u0441\u043F\u0456\u043B\u044C\u043D\u0430 \u0447\u0430\u0441\u0442\u043A\u043E\u0432\u0430"
|
|
44
|
+
}
|
|
45
|
+
export declare enum OwnershipType {
|
|
46
|
+
Single = "single",
|
|
47
|
+
CommonShared = "commonShared",
|
|
48
|
+
CommonPartial = "commonPartial"
|
|
49
|
+
}
|
|
50
|
+
export declare enum DcSbjType {
|
|
51
|
+
Individual = "1",
|
|
52
|
+
Entity = "2"
|
|
53
|
+
}
|
|
54
|
+
export declare enum ExternalEvent {
|
|
55
|
+
PublicServiceDrrpExtGroup = "public-service.drrp-extgroup",
|
|
56
|
+
PublicServiceDrrpExtSearch = "public-service.drrp-extsearch",
|
|
57
|
+
PublicServiceDrrpGetActualAtu = "public-service.drrp-getactualatu"
|
|
58
|
+
}
|
|
59
|
+
export interface DrrpConfig {
|
|
60
|
+
timeout?: number;
|
|
61
|
+
extSearchTimeout?: number;
|
|
62
|
+
unavailableProcessCode?: number;
|
|
63
|
+
}
|
|
64
|
+
export interface DrrpRequestOptions {
|
|
65
|
+
timeout?: number;
|
|
66
|
+
unavailableProcessCode?: number;
|
|
67
|
+
}
|
|
68
|
+
export interface DrrpExtSearchRequestOptions extends DrrpRequestOptions {
|
|
69
|
+
isSuspend?: boolean;
|
|
70
|
+
}
|
|
71
|
+
export interface DrrpError {
|
|
72
|
+
message: string;
|
|
73
|
+
code: number;
|
|
74
|
+
}
|
|
75
|
+
export interface RealtyAddress {
|
|
76
|
+
addressDetail: string;
|
|
77
|
+
}
|
|
78
|
+
export interface RealtyProperty {
|
|
79
|
+
rnNum: number;
|
|
80
|
+
regDate: string;
|
|
81
|
+
partSize?: string;
|
|
82
|
+
prKind: string;
|
|
83
|
+
prCommonKind?: PropertyCommonKind | string;
|
|
84
|
+
prType?: string;
|
|
85
|
+
prState: PropertyState;
|
|
86
|
+
registrar: string;
|
|
87
|
+
subjects: RealtySubject[];
|
|
88
|
+
entityLinks: (RealtyEntityLink & {
|
|
89
|
+
linkPrRnNum?: string;
|
|
90
|
+
})[];
|
|
91
|
+
causeDocuments: RealtyCauseDocument[];
|
|
92
|
+
}
|
|
93
|
+
export interface RealtyMortgage {
|
|
94
|
+
rnNum: number;
|
|
95
|
+
regDate: string;
|
|
96
|
+
registrar: string;
|
|
97
|
+
additional?: string;
|
|
98
|
+
MgState?: MortgageState;
|
|
99
|
+
propertyRights: RealtyPropertyRights[];
|
|
100
|
+
subjects: RealtySubject[];
|
|
101
|
+
causeDocuments: RealtyCauseDocument[];
|
|
102
|
+
entityLinks: (RealtyEntityLink & {
|
|
103
|
+
linkMgRnNum?: string;
|
|
104
|
+
})[];
|
|
105
|
+
}
|
|
106
|
+
export interface RealtyLimitation {
|
|
107
|
+
rnNum: number;
|
|
108
|
+
regDate: string;
|
|
109
|
+
registrar: string;
|
|
110
|
+
LmType: string;
|
|
111
|
+
LmTypeExtension?: string;
|
|
112
|
+
LmDescription?: string;
|
|
113
|
+
execTerm?: string;
|
|
114
|
+
actTermText?: string;
|
|
115
|
+
actTerm?: string;
|
|
116
|
+
OligationSum?: number;
|
|
117
|
+
CurrencyType?: string;
|
|
118
|
+
propertyRights: RealtyPropertyRights[];
|
|
119
|
+
subjects: RealtySubject[];
|
|
120
|
+
causeDocuments: RealtyCauseDocument[];
|
|
121
|
+
entityLinks: (RealtyEntityLink & {
|
|
122
|
+
linkLmRnNum?: string;
|
|
123
|
+
})[];
|
|
124
|
+
}
|
|
125
|
+
export interface RealtySubject {
|
|
126
|
+
dcSbjType: DcSbjType;
|
|
127
|
+
sbjAddType?: string;
|
|
128
|
+
sbjName: string;
|
|
129
|
+
sbjCode?: string;
|
|
130
|
+
sbjRlName?: string;
|
|
131
|
+
country?: string;
|
|
132
|
+
idEddr?: string;
|
|
133
|
+
idDoc?: {
|
|
134
|
+
dcSidType: string;
|
|
135
|
+
publisher: string;
|
|
136
|
+
docDate: string;
|
|
137
|
+
seriesNum: string;
|
|
138
|
+
};
|
|
139
|
+
}
|
|
140
|
+
export interface RealtyCauseDocument {
|
|
141
|
+
cdType: string;
|
|
142
|
+
cdTypeExtension?: string;
|
|
143
|
+
docDate?: string;
|
|
144
|
+
expirationDate?: string;
|
|
145
|
+
publisher: string;
|
|
146
|
+
enum: string;
|
|
147
|
+
additional?: string;
|
|
148
|
+
}
|
|
149
|
+
export interface RealtyEntityLink {
|
|
150
|
+
registryType?: string;
|
|
151
|
+
registryTypeExtension?: string;
|
|
152
|
+
roOpID?: string;
|
|
153
|
+
otherRegNum?: string;
|
|
154
|
+
oldRegDate?: string;
|
|
155
|
+
linkRegDate?: string;
|
|
156
|
+
}
|
|
157
|
+
export interface RealtyPropertyRights {
|
|
158
|
+
irpRnNum?: number;
|
|
159
|
+
irpSort?: string;
|
|
160
|
+
propertyDescription?: string;
|
|
161
|
+
}
|
|
162
|
+
export interface PropertyOwnerInfo {
|
|
163
|
+
fullName: string;
|
|
164
|
+
rnokpp: string;
|
|
165
|
+
rnNum: number;
|
|
166
|
+
partSize?: string;
|
|
167
|
+
prCommonKind?: PropertyCommonKind | string;
|
|
168
|
+
}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { DrrpError, RealtyAddress, RealtyLimitation, RealtyMortgage, RealtyProperty, RealtyState, RealtyType } from '.';
|
|
2
|
+
export interface PublicServiceDrrpExtGroupRequest {
|
|
3
|
+
entity: 'rrpExch_external';
|
|
4
|
+
method: 'generate';
|
|
5
|
+
reportResultID: number;
|
|
6
|
+
groupID: number;
|
|
7
|
+
}
|
|
8
|
+
export interface RealtyExt {
|
|
9
|
+
regNum: string;
|
|
10
|
+
regDate: string;
|
|
11
|
+
reType: RealtyType | string;
|
|
12
|
+
reTypeOnm?: string;
|
|
13
|
+
reTypeExtension?: string;
|
|
14
|
+
reSubType?: string;
|
|
15
|
+
reSubTypeExtension?: string;
|
|
16
|
+
reInCreation?: string;
|
|
17
|
+
isResidentialBuilding?: string;
|
|
18
|
+
reState: RealtyState;
|
|
19
|
+
sectionType: string;
|
|
20
|
+
region: string;
|
|
21
|
+
techDescription?: string;
|
|
22
|
+
area?: number;
|
|
23
|
+
livingArea?: number;
|
|
24
|
+
wallMaterial?: string;
|
|
25
|
+
depreciationPercent?: number;
|
|
26
|
+
selfBuildArea?: number;
|
|
27
|
+
hasProperties: number;
|
|
28
|
+
properties: RealtyProperty[];
|
|
29
|
+
realtyAddress: RealtyAddress[];
|
|
30
|
+
limitation?: RealtyLimitation[];
|
|
31
|
+
mortgage?: RealtyMortgage[];
|
|
32
|
+
}
|
|
33
|
+
export interface PublicServiceDrrpExtGroupResponse {
|
|
34
|
+
entity: 'rrpExch_external';
|
|
35
|
+
method: 'generate';
|
|
36
|
+
reportResultID: number;
|
|
37
|
+
groupID: number;
|
|
38
|
+
resultID: number;
|
|
39
|
+
ID: number;
|
|
40
|
+
resultData: string;
|
|
41
|
+
resultMessage?: string;
|
|
42
|
+
}
|
|
43
|
+
export interface PublicServiceDrrpExtGroupResult {
|
|
44
|
+
error?: DrrpError;
|
|
45
|
+
realty: RealtyExt[];
|
|
46
|
+
oldRealty: unknown[];
|
|
47
|
+
oldMortgageJson: unknown[];
|
|
48
|
+
oldLimitationJson: unknown[];
|
|
49
|
+
allAdresses: unknown[];
|
|
50
|
+
}
|
|
51
|
+
export interface SubjectInfoClarifyingResult {
|
|
52
|
+
realty: RealtyExt[];
|
|
53
|
+
oldRealty: unknown[];
|
|
54
|
+
}
|