@diia-inhouse/providers 2.3.13 → 2.4.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.
@@ -7,13 +7,15 @@ const drrpProviderQueueConfig = {
7
7
  publish: [
8
8
  "public-service.drrp-extsearch",
9
9
  "public-service.drrp-extgroup",
10
- "public-service.drrp-getactualatu"
10
+ "public-service.drrp-getactualatu",
11
+ "public-service.drrp-getrealtyoperation"
11
12
  ]
12
13
  } },
13
14
  topicsConfig: { [QueueConfigType.External]: { ["Repo"]: { events: [
14
15
  "public-service.drrp-extsearch",
15
16
  "public-service.drrp-extgroup",
16
- "public-service.drrp-getactualatu"
17
+ "public-service.drrp-getactualatu",
18
+ "public-service.drrp-getrealtyoperation"
17
19
  ] } } }
18
20
  };
19
21
  //#endregion
package/dist/index.d.ts CHANGED
@@ -1,7 +1,8 @@
1
- import { DcSbjType, DrrpConfig, DrrpError, DrrpExtSearchRequestOptions, DrrpRequestOptions, ExternalEvent, ExternalTopic, MortgageState, OwnershipType, PropertyCommonKind, PropertyOwnerInfo, PropertyState, RealtyAddress, RealtyCauseDocument, RealtyEntityLink, RealtyLimitation, RealtyMortgage, RealtyProperty, RealtyPropertyRights, RealtyState, RealtySubject, RealtyType } from "./interfaces/providers/drrp/index.js";
1
+ import { DcSbjType, DrrpConfig, DrrpError, DrrpExtSearchRequestOptions, DrrpRequestOptions, ExternalEvent, ExternalTopic, MortgageState, OwnershipType, PropertyCommonKind, PropertyOwnerInfo, PropertyState, RealtyAddress, RealtyCauseDocument, RealtyEntityLink, RealtyGroundArea, RealtyIrp, RealtyLimitation, RealtyMortgage, RealtyOperation, RealtyProperty, RealtyPropertyRights, RealtyState, RealtySubject, RealtyType } from "./interfaces/providers/drrp/index.js";
2
2
  import { PublicServiceDrrpExtGroupRequest, PublicServiceDrrpExtGroupResponse, PublicServiceDrrpExtGroupResult, RealtyExt, SubjectInfoClarifyingResult } from "./interfaces/providers/drrp/publicServiceDrrpExtGroup.js";
3
3
  import { DcBuildingType, DcGroupType, DcHouseType, DcObjectNumType, DcRoomType, DrrpGroupResultAddressDetail, DrrpGroupResultItem, DrrpSearchAlgorithm, DrrpSearchObjectInfo, DrrpSearchSubjectInfo, DrrpSearchType, DrrpSubjectRoleName, PublicServiceDrrpExtSearchRequest, PublicServiceDrrpExtSearchResponse, PublicServiceDrrpObjectRequest, PublicServiceDrrpObjectResponse, PublicServiceDrrpSubjectRequest, PublicServiceDrrpSubjectResponse, Realty, SubjectInfoResult } from "./interfaces/providers/drrp/publicServiceDrrpExtSearch.js";
4
- import { DrrpProvider } from "./providers/drrp/index.js";
5
4
  import { PublicServiceDrrpActualAtuIdRequest, PublicServiceDrrpActualAtuIdResponse } from "./interfaces/providers/drrp/publicServiceDrrpGetActualAtu.js";
5
+ import { GetRealtyOperationIrpRnNumResultData, GetRealtyOperationLmRnNumResultData, GetRealtyOperationMgRnNumResultData, GetRealtyOperationPrRnNumResultData, GetRealtyOperationRealtyRnNumResultData, PublicServiceDrrpGetRealtyOperationRequest, PublicServiceDrrpGetRealtyOperationResponse, RealtyOperationLimitation, RealtyOperationMortgage, RealtyOperationProperty } from "./interfaces/providers/drrp/publicServiceDrrpGetRealtyOperation.js";
6
+ import { DrrpProvider } from "./providers/drrp/index.js";
6
7
  import { drrpProviderQueueConfig } from "./configs/drrp/index.js";
7
- export { DcBuildingType, DcGroupType, DcHouseType, DcObjectNumType, DcRoomType, DcSbjType, DrrpConfig, DrrpError, DrrpExtSearchRequestOptions, DrrpGroupResultAddressDetail, DrrpGroupResultItem, DrrpProvider, DrrpRequestOptions, DrrpSearchAlgorithm, DrrpSearchObjectInfo, DrrpSearchSubjectInfo, DrrpSearchType, DrrpSubjectRoleName, ExternalEvent, ExternalTopic, MortgageState, OwnershipType, PropertyCommonKind, PropertyOwnerInfo, PropertyState, PublicServiceDrrpActualAtuIdRequest, PublicServiceDrrpActualAtuIdResponse, PublicServiceDrrpExtGroupRequest, PublicServiceDrrpExtGroupResponse, PublicServiceDrrpExtGroupResult, PublicServiceDrrpExtSearchRequest, PublicServiceDrrpExtSearchResponse, PublicServiceDrrpObjectRequest, PublicServiceDrrpObjectResponse, PublicServiceDrrpSubjectRequest, PublicServiceDrrpSubjectResponse, Realty, RealtyAddress, RealtyCauseDocument, RealtyEntityLink, RealtyExt, RealtyLimitation, RealtyMortgage, RealtyProperty, RealtyPropertyRights, RealtyState, RealtySubject, RealtyType, SubjectInfoClarifyingResult, SubjectInfoResult, drrpProviderQueueConfig };
8
+ export { DcBuildingType, DcGroupType, DcHouseType, DcObjectNumType, DcRoomType, DcSbjType, DrrpConfig, DrrpError, DrrpExtSearchRequestOptions, DrrpGroupResultAddressDetail, DrrpGroupResultItem, DrrpProvider, DrrpRequestOptions, DrrpSearchAlgorithm, DrrpSearchObjectInfo, DrrpSearchSubjectInfo, DrrpSearchType, DrrpSubjectRoleName, ExternalEvent, ExternalTopic, GetRealtyOperationIrpRnNumResultData, GetRealtyOperationLmRnNumResultData, GetRealtyOperationMgRnNumResultData, GetRealtyOperationPrRnNumResultData, GetRealtyOperationRealtyRnNumResultData, MortgageState, OwnershipType, PropertyCommonKind, PropertyOwnerInfo, PropertyState, PublicServiceDrrpActualAtuIdRequest, PublicServiceDrrpActualAtuIdResponse, PublicServiceDrrpExtGroupRequest, PublicServiceDrrpExtGroupResponse, PublicServiceDrrpExtGroupResult, PublicServiceDrrpExtSearchRequest, PublicServiceDrrpExtSearchResponse, PublicServiceDrrpGetRealtyOperationRequest, PublicServiceDrrpGetRealtyOperationResponse, PublicServiceDrrpObjectRequest, PublicServiceDrrpObjectResponse, PublicServiceDrrpSubjectRequest, PublicServiceDrrpSubjectResponse, Realty, RealtyAddress, RealtyCauseDocument, RealtyEntityLink, RealtyExt, RealtyGroundArea, RealtyIrp, RealtyLimitation, RealtyMortgage, RealtyOperation, RealtyOperationLimitation, RealtyOperationMortgage, RealtyOperationProperty, RealtyProperty, RealtyPropertyRights, RealtyState, RealtySubject, RealtyType, SubjectInfoClarifyingResult, SubjectInfoResult, drrpProviderQueueConfig };
@@ -58,7 +58,8 @@ declare enum ExternalTopic {
58
58
  declare enum ExternalEvent {
59
59
  PublicServiceDrrpExtGroup = "public-service.drrp-extgroup",
60
60
  PublicServiceDrrpExtSearch = "public-service.drrp-extsearch",
61
- PublicServiceDrrpGetActualAtu = "public-service.drrp-getactualatu"
61
+ PublicServiceDrrpGetActualAtu = "public-service.drrp-getactualatu",
62
+ PublicServiceDrrpGetRealtyOperation = "public-service.drrp-getrealtyoperation"
62
63
  }
63
64
  interface DrrpConfig {
64
65
  timeout?: number;
@@ -129,6 +130,58 @@ interface RealtyLimitation {
129
130
  linkLmRnNum?: string;
130
131
  })[];
131
132
  }
133
+ interface RealtyOperation {
134
+ opID: number;
135
+ dcOpType: string;
136
+ opType: string;
137
+ isActive: string;
138
+ }
139
+ interface RealtyGroundArea {
140
+ cadNum?: string;
141
+ melNetNum?: string;
142
+ area?: string;
143
+ areaUM?: string;
144
+ }
145
+ interface RealtyIrp {
146
+ rnNum: number;
147
+ regDate: string;
148
+ cost?: number;
149
+ rpCost?: number;
150
+ registrar: string;
151
+ IrpSort: string;
152
+ irpSortExtension?: string;
153
+ irpDescription?: string;
154
+ opDate?: string;
155
+ dcOpReasonType?: string;
156
+ OpReasonType?: string;
157
+ opReason?: string;
158
+ isIndefinitely?: string;
159
+ actTermText?: string;
160
+ actTerm?: string;
161
+ ContractTerm?: string;
162
+ ExpirationTerm?: string;
163
+ Year?: number;
164
+ Month?: number;
165
+ Day?: number;
166
+ isRent?: string;
167
+ isRightToRent?: string;
168
+ isRightProlongation?: string;
169
+ isAutomaticProlongation?: string;
170
+ objectDescription?: string;
171
+ irpSpread?: string;
172
+ easementType?: string;
173
+ easementTypeExt?: string;
174
+ rentIrpRnNum?: number;
175
+ enumEmph?: string;
176
+ enumSubPart?: string;
177
+ enumSPart?: string;
178
+ subjects: RealtySubject[];
179
+ causeDocuments: RealtyCauseDocument[];
180
+ entityLinks?: (RealtyEntityLink & {
181
+ linkPrRnNum?: string;
182
+ })[];
183
+ operations: RealtyOperation[];
184
+ }
132
185
  interface RealtySubject {
133
186
  dcSbjType: DcSbjType;
134
187
  sbjAddType?: string;
@@ -174,4 +227,4 @@ interface PropertyOwnerInfo {
174
227
  prCommonKind?: PropertyCommonKind | string;
175
228
  }
176
229
  //#endregion
177
- export { DcSbjType, DrrpConfig, DrrpError, DrrpExtSearchRequestOptions, DrrpRequestOptions, ExternalEvent, ExternalTopic, MortgageState, OwnershipType, PropertyCommonKind, PropertyOwnerInfo, PropertyState, RealtyAddress, RealtyCauseDocument, RealtyEntityLink, RealtyLimitation, RealtyMortgage, RealtyProperty, RealtyPropertyRights, RealtyState, RealtySubject, RealtyType };
230
+ export { DcSbjType, DrrpConfig, DrrpError, DrrpExtSearchRequestOptions, DrrpRequestOptions, ExternalEvent, ExternalTopic, MortgageState, OwnershipType, PropertyCommonKind, PropertyOwnerInfo, PropertyState, RealtyAddress, RealtyCauseDocument, RealtyEntityLink, RealtyGroundArea, RealtyIrp, RealtyLimitation, RealtyMortgage, RealtyOperation, RealtyProperty, RealtyPropertyRights, RealtyState, RealtySubject, RealtyType };
@@ -67,6 +67,7 @@ let ExternalEvent = /* @__PURE__ */ function(ExternalEvent) {
67
67
  ExternalEvent["PublicServiceDrrpExtGroup"] = "public-service.drrp-extgroup";
68
68
  ExternalEvent["PublicServiceDrrpExtSearch"] = "public-service.drrp-extsearch";
69
69
  ExternalEvent["PublicServiceDrrpGetActualAtu"] = "public-service.drrp-getactualatu";
70
+ ExternalEvent["PublicServiceDrrpGetRealtyOperation"] = "public-service.drrp-getrealtyoperation";
70
71
  return ExternalEvent;
71
72
  }({});
72
73
  //#endregion
@@ -0,0 +1,87 @@
1
+ import { RealtyAddress, RealtyGroundArea, RealtyIrp, RealtyLimitation, RealtyMortgage, RealtyOperation, RealtyProperty, RealtyState, RealtyType } from "./index.js";
2
+
3
+ //#region src/interfaces/providers/drrp/publicServiceDrrpGetRealtyOperation.d.ts
4
+ interface PublicServiceDrrpGetRealtyOperationRequest {
5
+ realtyRnNum?: string;
6
+ mgRnNum?: string;
7
+ lmRnNum?: string;
8
+ prRnNum?: string;
9
+ irpRnNum?: string;
10
+ }
11
+ interface RealtyOperationProperty extends RealtyProperty {
12
+ cost?: number;
13
+ prModeBit?: string;
14
+ ownModeAdditional?: string;
15
+ ownAdditional?: string;
16
+ opDate?: string;
17
+ dcOpReasonType?: string;
18
+ OpReasonType?: string;
19
+ opReason?: string;
20
+ operations: RealtyOperation[];
21
+ }
22
+ interface RealtyOperationMortgage extends RealtyMortgage {
23
+ operations: RealtyOperation[];
24
+ }
25
+ interface RealtyOperationLimitation extends RealtyLimitation {
26
+ operations: RealtyOperation[];
27
+ }
28
+ interface GetRealtyOperationPrRnNumResultData {
29
+ properties?: RealtyOperationProperty[];
30
+ }
31
+ interface GetRealtyOperationMgRnNumResultData {
32
+ mortgage?: RealtyOperationMortgage[];
33
+ }
34
+ interface GetRealtyOperationLmRnNumResultData {
35
+ limitation?: RealtyOperationLimitation[];
36
+ }
37
+ interface GetRealtyOperationIrpRnNumResultData {
38
+ irps?: RealtyIrp[];
39
+ }
40
+ interface GetRealtyOperationRealtyRnNumResultData {
41
+ regNum: string;
42
+ regDate: string;
43
+ dcReTypeOnm: string;
44
+ reType: RealtyType | string;
45
+ reTypeExtension?: string;
46
+ reSubType?: string;
47
+ reSubTypeExtension?: string;
48
+ Cost?: number;
49
+ isResidentialBuilding?: string;
50
+ reState: RealtyState;
51
+ opDate: string;
52
+ dcOpReasonType?: string;
53
+ OpReasonType?: string;
54
+ OpReason?: string;
55
+ sectionType: string;
56
+ region: string;
57
+ techDescription?: string;
58
+ area?: number;
59
+ livingArea?: number;
60
+ readinessPercent?: number;
61
+ objectIdentifier?: string;
62
+ sbjName?: string;
63
+ sbjRegDate?: string;
64
+ sbjCode?: string;
65
+ additional?: string;
66
+ realtyAddress?: RealtyAddress;
67
+ groundArea?: RealtyGroundArea[];
68
+ operations: RealtyOperation[];
69
+ }
70
+ type PublicServiceDrrpGetRealtyOperationResponse = {
71
+ prRnNum?: string;
72
+ resultData: GetRealtyOperationPrRnNumResultData;
73
+ } | {
74
+ realtyRnNum?: string;
75
+ resultData: GetRealtyOperationRealtyRnNumResultData;
76
+ } | {
77
+ mgRnNum?: string;
78
+ resultData: GetRealtyOperationMgRnNumResultData;
79
+ } | {
80
+ lmRnNum?: string;
81
+ resultData: GetRealtyOperationLmRnNumResultData;
82
+ } | {
83
+ irpRnNum?: string;
84
+ resultData: GetRealtyOperationIrpRnNumResultData;
85
+ };
86
+ //#endregion
87
+ export { GetRealtyOperationIrpRnNumResultData, GetRealtyOperationLmRnNumResultData, GetRealtyOperationMgRnNumResultData, GetRealtyOperationPrRnNumResultData, GetRealtyOperationRealtyRnNumResultData, PublicServiceDrrpGetRealtyOperationRequest, PublicServiceDrrpGetRealtyOperationResponse, RealtyOperationLimitation, RealtyOperationMortgage, RealtyOperationProperty };
@@ -1,6 +1,7 @@
1
1
  import { DrrpConfig, DrrpExtSearchRequestOptions, DrrpRequestOptions, OwnershipType, PropertyOwnerInfo, RealtyProperty } from "../../interfaces/providers/drrp/index.js";
2
2
  import { SubjectInfoClarifyingResult } from "../../interfaces/providers/drrp/publicServiceDrrpExtGroup.js";
3
3
  import { Realty, SubjectInfoResult } from "../../interfaces/providers/drrp/publicServiceDrrpExtSearch.js";
4
+ import { PublicServiceDrrpGetRealtyOperationRequest, PublicServiceDrrpGetRealtyOperationResponse } from "../../interfaces/providers/drrp/publicServiceDrrpGetRealtyOperation.js";
4
5
  import { ExternalCommunicator } from "@diia-inhouse/diia-queue";
5
6
  import { Logger } from "@diia-inhouse/types";
6
7
 
@@ -15,6 +16,7 @@ declare class DrrpProvider {
15
16
  getObjectInfo(realtyId: string, ops?: DrrpExtSearchRequestOptions): Promise<Realty | undefined>;
16
17
  getActualAtuId(atuId: number, ops?: DrrpRequestOptions): Promise<number>;
17
18
  getActualAtuIds(atuId: number, ops?: DrrpRequestOptions): Promise<number[]>;
19
+ getRealtyOperation(request: PublicServiceDrrpGetRealtyOperationRequest, ops?: DrrpRequestOptions): Promise<PublicServiceDrrpGetRealtyOperationResponse>;
18
20
  /** @deprecated use getOwnershipType */
19
21
  isSoleOwner(owners: Pick<RealtyProperty, 'prCommonKind' | 'subjects' | 'partSize'>[]): boolean;
20
22
  /** @deprecated use isInvalidOwnersData */
@@ -1,6 +1,6 @@
1
1
  import "../../interfaces/providers/drrp/index.js";
2
2
  import "../../interfaces/providers/drrp/publicServiceDrrpExtSearch.js";
3
- import { drrpActualAtuValidationSchema, drrpExtGroupResultValidationSchema, drrpExtSearchResultValidationSchema } from "../../validation/drrp/index.js";
3
+ import { drrpActualAtuValidationSchema, drrpExtGroupResultValidationSchema, drrpExtSearchResultValidationSchema, drrpGetRealtyOperationValidationSchema } from "../../validation/drrp/index.js";
4
4
  import lodash from "lodash";
5
5
  import Mexp from "math-expression-evaluator";
6
6
  import { ErrorType, InternalServerError } from "@diia-inhouse/errors";
@@ -110,6 +110,18 @@ var DrrpProvider = class {
110
110
  if (!actualAtuID?.length) return [atuId];
111
111
  return actualAtuID;
112
112
  }
113
+ async getRealtyOperation(request, ops = {}) {
114
+ const response = await this.request("public-service.drrp-getrealtyoperation", request, {
115
+ validationRules: drrpGetRealtyOperationValidationSchema,
116
+ ...ops
117
+ });
118
+ if (!response) {
119
+ const errorMsg = "Failed to retrieve realty operation data from the drrp registry";
120
+ this.logger.error(errorMsg, { request });
121
+ throw new InternalServerError(errorMsg);
122
+ }
123
+ return response;
124
+ }
113
125
  /** @deprecated use getOwnershipType */
114
126
  isSoleOwner(owners) {
115
127
  if (owners.length === 0) return false;
@@ -34,5 +34,28 @@ const drrpActualAtuValidationSchema = {
34
34
  items: "number"
35
35
  }
36
36
  };
37
+ const drrpGetRealtyOperationValidationSchema = {
38
+ realtyRnNum: {
39
+ type: "string",
40
+ optional: true
41
+ },
42
+ mgRnNum: {
43
+ type: "string",
44
+ optional: true
45
+ },
46
+ lmRnNum: {
47
+ type: "string",
48
+ optional: true
49
+ },
50
+ prRnNum: {
51
+ type: "string",
52
+ optional: true
53
+ },
54
+ irpRnNum: {
55
+ type: "string",
56
+ optional: true
57
+ },
58
+ resultData: { type: "object" }
59
+ };
37
60
  //#endregion
38
- export { drrpActualAtuValidationSchema, drrpExtGroupResultValidationSchema, drrpExtSearchResultValidationSchema };
61
+ export { drrpActualAtuValidationSchema, drrpExtGroupResultValidationSchema, drrpExtSearchResultValidationSchema, drrpGetRealtyOperationValidationSchema };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@diia-inhouse/providers",
3
- "version": "2.3.13",
3
+ "version": "2.4.0",
4
4
  "type": "module",
5
5
  "description": "common providers",
6
6
  "author": "Diia",