558 lines
16 KiB
TypeScript
558 lines
16 KiB
TypeScript
import type { ApiResponse, SewerageStatusInfo, StatisticsInputCommonInfoBase } from "../statistics-interface";
|
|
|
|
/** 하수도재정 결산(ST00090001) — `SewerageFinanceSettleInpColumn.tabKey` */
|
|
export const SEWERAGE_FINANCE_SETTLE_STATS_CD = "ST00090001" as const;
|
|
|
|
/** 검증 결과 한 건 */
|
|
export interface SewerageFinanceVerificationResultItem {
|
|
vrfcCd: string;
|
|
rsnExpln: string;
|
|
nowVlCn: string;
|
|
compVlCn: string;
|
|
}
|
|
|
|
/** 필드명 → 검증 결과 배열 */
|
|
export type SewerageFinanceVerificationResult = Record<
|
|
string,
|
|
SewerageFinanceVerificationResultItem[]
|
|
>;
|
|
|
|
/** ST00090001 조회 `data.commonInfo` */
|
|
export interface SewerageFinanceSettleCommonInfo extends StatisticsInputCommonInfoBase {
|
|
statsYr: string;
|
|
ctpvNm: string;
|
|
sewerBzmnCd: string;
|
|
statsCd: string;
|
|
verificationResult?: SewerageFinanceVerificationResult;
|
|
}
|
|
|
|
/**
|
|
* ST00090001 조회 `data.sewerageFinanceSettleList[]` 한 행.
|
|
* `SewerageFinanceSettleInpColumn` fieldName과 동일 (`ctpvNm` 그리드 값은 `commonInfo.ctpvNm` 시도명).
|
|
*/
|
|
export interface SewerageFinanceSettleItem {
|
|
admdstCd: string;
|
|
sggNm: string;
|
|
admdstNm: string;
|
|
fnnByWholPjtcoAmt: number;
|
|
cnterGovSprtAmt: number;
|
|
mctpvLcexpAmt: number;
|
|
wareaSggLclAmt: number;
|
|
sewerUseAmt: number;
|
|
orgprBrdnAmt: number;
|
|
etcIncmAmt: number;
|
|
crfwAmt: number;
|
|
lbltAmt: number;
|
|
usgByWholPjtcoAmt: number;
|
|
tmplntWholAmt: number;
|
|
tmplntFcltAmt: number;
|
|
tmplntMendngAmt: number;
|
|
tmplntOperKeepAmt: number;
|
|
tmplntEtcAmt: number;
|
|
wholSwagePplAmt: number;
|
|
swagePplFcltAmt: number;
|
|
swagePplMendngAmt: number;
|
|
swagePplOperKeepAmt: number;
|
|
swagePplEtcAmt: number;
|
|
wholSwageImpdFcltAmt: number;
|
|
swageImpdFcltAmt: number;
|
|
swageImpdMendngAmt: number;
|
|
swageImpdOperKeepAmt: number;
|
|
swageImpdFcltEtcAmt: number;
|
|
etcWholAmt: number;
|
|
etcAcdntCrfwAmt: number;
|
|
etcNrcpAmt: number;
|
|
etcAmt: number;
|
|
rmrk: string | null;
|
|
verificationResult?: SewerageFinanceVerificationResult;
|
|
}
|
|
|
|
export interface SewerageFinanceSettleResponseData {
|
|
statusInfo: SewerageStatusInfo;
|
|
commonInfo: SewerageFinanceSettleCommonInfo;
|
|
sewerageFinanceSettleList: SewerageFinanceSettleItem[];
|
|
}
|
|
|
|
export type SewerageFinanceSettleApiResponse = ApiResponse<SewerageFinanceSettleResponseData> & {
|
|
message: string;
|
|
};
|
|
|
|
/** ST00090001 조회 요청 파라미터 */
|
|
export interface SewerageFinanceSettleRequestParams {
|
|
ctpvNm?: string;
|
|
sggNm?: string;
|
|
sewerBzmnCd?: string;
|
|
statsYr?: string;
|
|
mode?: string;
|
|
}
|
|
|
|
/**
|
|
* ST00090001 저장 API `saveList[]` 한 행.
|
|
* `SewerageFinanceSettleInpColumn` fieldName과 동일 (`ctpvNm` 그리드 값은 요청 `ctpvNm` 시도명).
|
|
*/
|
|
export interface SewerageFinanceSettleSaveItem {
|
|
admdstCd: string | null;
|
|
sggNm: string | null;
|
|
admdstNm: string | null;
|
|
cnterGovSprtAmt: number;
|
|
mctpvLcexpAmt: number;
|
|
wareaSggLclAmt: number;
|
|
sewerUseAmt: number;
|
|
orgprBrdnAmt: number;
|
|
etcIncmAmt: number;
|
|
crfwAmt: number;
|
|
lbltAmt: number;
|
|
tmplntFcltAmt: number;
|
|
tmplntMendngAmt: number;
|
|
tmplntOperKeepAmt: number;
|
|
tmplntEtcAmt: number;
|
|
swagePplFcltAmt: number;
|
|
swagePplMendngAmt: number;
|
|
swagePplOperKeepAmt: number;
|
|
swagePplEtcAmt: number;
|
|
swageImpdFcltAmt: number;
|
|
swageImpdMendngAmt: number;
|
|
swageImpdOperKeepAmt: number;
|
|
swageImpdFcltEtcAmt: number;
|
|
etcAcdntCrfwAmt: number;
|
|
etcNrcpAmt: number;
|
|
etcAmt: number;
|
|
rmrk: string | null;
|
|
fnnByWholPjtcoAmt: number;
|
|
usgByWholPjtcoAmt: number;
|
|
tmplntWholAmt: number;
|
|
wholSwagePplAmt: number;
|
|
wholSwageImpdFcltAmt: number;
|
|
etcWholAmt: number;
|
|
}
|
|
|
|
/** ST00090001 저장 API 요청 */
|
|
export interface SewerageFinanceSettleSaveRequest {
|
|
statsYr: string;
|
|
ctpvNm: string;
|
|
sggNm?: string;
|
|
sewerBzmnCd: string;
|
|
userId: string;
|
|
superAdmin?: string;
|
|
saveList: SewerageFinanceSettleSaveItem[];
|
|
}
|
|
|
|
export interface SewerageFinanceSettleSaveResponse {
|
|
status: string;
|
|
message?: string;
|
|
data?: string;
|
|
}
|
|
|
|
/** ST00090001 제출 API 요청 */
|
|
export interface SewerageFinanceSettleSubmitRequest {
|
|
statsYr: string;
|
|
ctpvNm: string;
|
|
sggNm?: string;
|
|
sewerBzmnCd: string;
|
|
userId: string;
|
|
laePicNm: string;
|
|
laePicTelNo: string;
|
|
laeKbrdrDeptNm: string;
|
|
laeKbrdrJbgdNm: string;
|
|
laeIdfrNm: string;
|
|
laeIdfrTelNo: string;
|
|
laeIdfrDeptNm: string;
|
|
laeIdfrJbgdNm: string;
|
|
superAdmin?: string;
|
|
submitList: SewerageFinanceSettleSaveItem[];
|
|
}
|
|
|
|
export interface SewerageFinanceSettleSubmitResponse {
|
|
status: string;
|
|
message?: string;
|
|
data?: {
|
|
finalStatus: string;
|
|
nvpassed: boolean;
|
|
isHbPassed?: string;
|
|
};
|
|
}
|
|
|
|
/** 하수도재정 입력 제출 공통 본문 (`submitList` 제외) */
|
|
export interface SewerageFinanceSubmitRequestBase {
|
|
statsYr: string;
|
|
ctpvNm: string;
|
|
sggNm?: string;
|
|
sewerBzmnCd: string;
|
|
userId: string;
|
|
laePicNm: string;
|
|
laePicTelNo: string;
|
|
laeKbrdrDeptNm: string;
|
|
laeKbrdrJbgdNm: string;
|
|
laeIdfrNm: string;
|
|
laeIdfrTelNo: string;
|
|
laeIdfrDeptNm: string;
|
|
laeIdfrJbgdNm: string;
|
|
superAdmin?: string;
|
|
}
|
|
|
|
export interface SewerageFinanceSubmitResponse {
|
|
status: string;
|
|
message?: string;
|
|
data?: {
|
|
finalStatus: string;
|
|
nvpassed: boolean;
|
|
isHbPassed?: string;
|
|
};
|
|
}
|
|
|
|
/** 하수도 요금(ST00090002) — `SewerageChargeInpColumn.tabKey` */
|
|
export const SEWERAGE_CHARGE_STATS_CD = "ST00090002" as const;
|
|
|
|
/** ST00090002 조회 `data.commonInfo` */
|
|
export interface SewerageChargeCommonInfo extends StatisticsInputCommonInfoBase {
|
|
statsYr: string;
|
|
ctpvNm: string;
|
|
sewerBzmnCd: string;
|
|
statsCd: string;
|
|
verificationResult?: SewerageFinanceVerificationResult;
|
|
}
|
|
|
|
/**
|
|
* ST00090002 조회 `data.sewerageChargeList[]` 한 행.
|
|
* `SewerageChargeInpColumn` fieldName과 동일 (`ctpvNm` 그리드 값은 `commonInfo.ctpvNm` 시도명).
|
|
*/
|
|
export interface SewerageChargeItem {
|
|
admdstCd: string;
|
|
sggNm: string;
|
|
admdstNm: string;
|
|
anlLevyQnt: number;
|
|
levyAmt: number;
|
|
avgUntprcAmt: number;
|
|
grssPrmcoAmt: number;
|
|
grssUnitPrmcoAmt: number;
|
|
rlztnRt: number;
|
|
rmrk: string | null;
|
|
verificationResult?: SewerageFinanceVerificationResult;
|
|
}
|
|
|
|
export interface SewerageChargeResponseData {
|
|
statusInfo: SewerageStatusInfo;
|
|
commonInfo: SewerageChargeCommonInfo;
|
|
sewerageChargeList: SewerageChargeItem[];
|
|
}
|
|
|
|
export type SewerageChargeApiResponse = ApiResponse<SewerageChargeResponseData> & {
|
|
message: string;
|
|
};
|
|
|
|
/** ST00090002 조회 요청 파라미터 */
|
|
export interface SewerageChargeRequestParams {
|
|
ctpvNm?: string;
|
|
sggNm?: string;
|
|
sewerBzmnCd?: string;
|
|
statsYr?: string;
|
|
mode?: string;
|
|
}
|
|
|
|
/**
|
|
* ST00090002 저장·제출 API `saveList` / `submitList[]` 한 행.
|
|
* `SewerageChargeInpColumn` fieldName과 동일 (`ctpvNm` 그리드 값은 요청 `ctpvNm` 시도명).
|
|
*/
|
|
export interface SewerageChargeSaveItem {
|
|
admdstCd: string | null;
|
|
sggNm: string | null;
|
|
admdstNm: string | null;
|
|
anlLevyQnt: number;
|
|
levyAmt: number;
|
|
grssPrmcoAmt: number;
|
|
rmrk: string | null;
|
|
avgUntprcAmt: number;
|
|
grssUnitPrmcoAmt: number;
|
|
rlztnRt: number;
|
|
}
|
|
|
|
/** ST00090002 저장 API 요청 */
|
|
export interface SewerageChargeSaveRequest {
|
|
statsYr: string;
|
|
ctpvNm: string;
|
|
sggNm?: string;
|
|
sewerBzmnCd: string;
|
|
userId: string;
|
|
superAdmin?: string;
|
|
saveList: SewerageChargeSaveItem[];
|
|
}
|
|
|
|
export interface SewerageChargeSaveResponse {
|
|
status: string;
|
|
message?: string;
|
|
data?: string;
|
|
}
|
|
|
|
/** ST00090002 제출 API 요청 (`submitList` 행은 `SewerageChargeSaveItem`과 동일) */
|
|
export interface SewerageChargeSubmitRequest extends SewerageFinanceSubmitRequestBase {
|
|
submitList: SewerageChargeSaveItem[];
|
|
}
|
|
|
|
export type SewerageChargeSubmitItem = SewerageChargeSaveItem;
|
|
|
|
/** 하수도 사용료(ST00090003) — `SewerageUsageFeeInpColumn.tabKey` */
|
|
export const SEWERAGE_USAGE_FEE_STATS_CD = "ST00090003" as const;
|
|
|
|
/** ST00090003 조회 `data.commonInfo` */
|
|
export interface SewerageUsageFeeCommonInfo extends StatisticsInputCommonInfoBase {
|
|
statsYr: string;
|
|
ctpvNm: string;
|
|
sewerBzmnCd: string;
|
|
statsCd: string;
|
|
verificationResult?: SewerageFinanceVerificationResult;
|
|
}
|
|
|
|
/**
|
|
* ST00090003 조회 `data.sewerageUsageFeeList[]` 한 행.
|
|
* `SewerageUsageFeeInpColumn` fieldName과 동일 (`ctpvNm` 그리드 값은 `commonInfo.ctpvNm` 시도명).
|
|
*/
|
|
export interface SewerageUsageFeeItem {
|
|
admdstCd: string;
|
|
sggNm: string;
|
|
admdstNm: string;
|
|
levyAmt: number;
|
|
levyQnt: number;
|
|
hshusLevyAmt: number;
|
|
hshusLevyQnt: number;
|
|
hshusUntprcAmt: number;
|
|
taskFrLevyAmt: number;
|
|
taskFrLevyQnt: number;
|
|
taskFrUntprcAmt: number;
|
|
fbuLevyAmt: number;
|
|
fbuLevyQnt: number;
|
|
fbuUntprcAmt: number;
|
|
bthhsFrSpcs1LevyAmt: number;
|
|
bthhsFrSpcs1LevyQnt: number;
|
|
bthhsFrSpcs1UntprcAmt: number;
|
|
bthhsFrSpcs2LevyAmt: number;
|
|
bthhsFrSpcs2LevyQnt: number;
|
|
bthhsFrSpcs2UntprcAmt: number;
|
|
induLevyAmt: number;
|
|
induLevyQnt: number;
|
|
induUntprcAmt: number;
|
|
etcLevyAmt: number;
|
|
etcLevyQnt: number;
|
|
etcLevyUntprcAmt: number;
|
|
rmrk: string | null;
|
|
verificationResult?: SewerageFinanceVerificationResult;
|
|
}
|
|
|
|
export interface SewerageUsageFeeResponseData {
|
|
statusInfo: SewerageStatusInfo;
|
|
commonInfo: SewerageUsageFeeCommonInfo;
|
|
sewerageUsageFeeList: SewerageUsageFeeItem[];
|
|
}
|
|
|
|
export type SewerageUsageFeeApiResponse = ApiResponse<SewerageUsageFeeResponseData> & {
|
|
message: string;
|
|
};
|
|
|
|
/** ST00090003 조회 요청 파라미터 */
|
|
export interface SewerageUsageFeeRequestParams {
|
|
ctpvNm?: string;
|
|
sggNm?: string;
|
|
sewerBzmnCd?: string;
|
|
statsYr?: string;
|
|
mode?: string;
|
|
}
|
|
|
|
/**
|
|
* ST00090003 저장·제출 API `saveList` / `submitList[]` 한 행.
|
|
* `SewerageUsageFeeInpColumn` fieldName과 동일 (`ctpvNm` 그리드 값은 요청 `ctpvNm` 시도명).
|
|
*/
|
|
export interface SewerageUsageFeeSaveItem {
|
|
admdstCd: string | null;
|
|
sggNm: string | null;
|
|
admdstNm: string | null;
|
|
hshusLevyAmt: number;
|
|
hshusLevyQnt: number;
|
|
hshusUntprcAmt: number;
|
|
taskFrLevyAmt: number;
|
|
taskFrLevyQnt: number;
|
|
taskFrUntprcAmt: number;
|
|
fbuLevyAmt: number;
|
|
fbuLevyQnt: number;
|
|
fbuUntprcAmt: number;
|
|
bthhsFrSpcs1LevyAmt: number;
|
|
bthhsFrSpcs1LevyQnt: number;
|
|
bthhsFrSpcs1UntprcAmt: number;
|
|
bthhsFrSpcs2LevyAmt: number;
|
|
bthhsFrSpcs2LevyQnt: number;
|
|
bthhsFrSpcs2UntprcAmt: number;
|
|
induLevyAmt: number;
|
|
induLevyQnt: number;
|
|
induUntprcAmt: number;
|
|
etcLevyAmt: number;
|
|
etcLevyQnt: number;
|
|
etcLevyUntprcAmt: number;
|
|
rmrk: string | null;
|
|
levyAmt: number;
|
|
levyQnt: number;
|
|
}
|
|
|
|
/** ST00090003 저장 API 요청 */
|
|
export interface SewerageUsageFeeSaveRequest {
|
|
statsYr: string;
|
|
ctpvNm: string;
|
|
sggNm?: string;
|
|
sewerBzmnCd: string;
|
|
userId: string;
|
|
superAdmin?: string;
|
|
saveList: SewerageUsageFeeSaveItem[];
|
|
}
|
|
|
|
export interface SewerageUsageFeeSaveResponse {
|
|
status: string;
|
|
message?: string;
|
|
data?: string;
|
|
}
|
|
|
|
/** ST00090003 제출 API 요청 (`submitList` 행은 `SewerageUsageFeeSaveItem`과 동일) */
|
|
export interface SewerageUsageFeeSubmitRequest extends SewerageFinanceSubmitRequestBase {
|
|
submitList: SewerageUsageFeeSaveItem[];
|
|
}
|
|
|
|
export type SewerageUsageFeeSubmitItem = SewerageUsageFeeSaveItem;
|
|
|
|
/** 원인자 부담금(ST00090004) — `CauserBurdenInpColumn.tabKey` */
|
|
export const CAUSER_BURDEN_STATS_CD = "ST00090004" as const;
|
|
|
|
/** ST00090004 조회 `data.commonInfo` */
|
|
export interface CauserBurdenCommonInfo extends StatisticsInputCommonInfoBase {
|
|
statsYr: string;
|
|
ctpvNm: string;
|
|
sewerBzmnCd: string;
|
|
statsCd: string;
|
|
verificationResult?: SewerageFinanceVerificationResult;
|
|
}
|
|
|
|
/**
|
|
* ST00090004 조회 `data.causerBurdenList[]` 한 행.
|
|
* `CauserBurdenInpColumn` fieldName과 동일 (`ctpvNm` 그리드 값은 `commonInfo.ctpvNm` 시도명).
|
|
*/
|
|
export interface CauserBurdenItem {
|
|
admdstCd: string;
|
|
sggNm: string;
|
|
admdstNm: string;
|
|
levyEvntcsCnt: number;
|
|
levyAmt: number;
|
|
trgtByWholClctnEvntcsCnt: number;
|
|
trgtByWholClctnAmt: number;
|
|
mltvEqpmEvntcsCnt: number;
|
|
mltvEqpmAmt: number;
|
|
othrCstrnOthrActrCnt: number;
|
|
othrCstrnOthrActrAmt: number;
|
|
rmrk: string | null;
|
|
verificationResult?: SewerageFinanceVerificationResult;
|
|
}
|
|
|
|
export interface CauserBurdenResponseData {
|
|
statusInfo: SewerageStatusInfo;
|
|
commonInfo: CauserBurdenCommonInfo;
|
|
causerBurdenList: CauserBurdenItem[];
|
|
}
|
|
|
|
export type CauserBurdenApiResponse = ApiResponse<CauserBurdenResponseData> & {
|
|
message: string;
|
|
};
|
|
|
|
/** ST00090004 조회 요청 파라미터 */
|
|
export interface CauserBurdenRequestParams {
|
|
ctpvNm?: string;
|
|
sggNm?: string;
|
|
sewerBzmnCd?: string;
|
|
statsYr?: string;
|
|
mode?: string;
|
|
}
|
|
|
|
/**
|
|
* ST00090004 저장·제출 API `saveList` / `submitList[]` 한 행.
|
|
* `CauserBurdenInpColumn` fieldName과 동일 (`ctpvNm` 그리드 값은 요청 `ctpvNm` 시도명).
|
|
* `trgtByWholClctnEvntcsCnt`는 조회·그리드 전용이며 저장·제출 요청에는 포함하지 않음.
|
|
*/
|
|
export interface CauserBurdenSaveItem {
|
|
admdstCd: string | null;
|
|
sggNm: string | null;
|
|
admdstNm: string | null;
|
|
levyEvntcsCnt: number;
|
|
levyAmt: number;
|
|
mltvEqpmEvntcsCnt: number;
|
|
mltvEqpmAmt: number;
|
|
othrCstrnOthrActrCnt: number;
|
|
othrCstrnOthrActrAmt: number;
|
|
rmrk: string | null;
|
|
trgtByWholClctnAmt: number;
|
|
}
|
|
|
|
/** ST00090004 저장 API 요청 */
|
|
export interface CauserBurdenSaveRequest {
|
|
statsYr: string;
|
|
ctpvNm: string;
|
|
sggNm?: string;
|
|
sewerBzmnCd: string;
|
|
userId: string;
|
|
superAdmin?: string;
|
|
saveList: CauserBurdenSaveItem[];
|
|
}
|
|
|
|
export interface CauserBurdenSaveResponse {
|
|
status: string;
|
|
message?: string;
|
|
data?: string;
|
|
}
|
|
|
|
/** ST00090004 제출 API 요청 (`submitList` 행은 `CauserBurdenSaveItem`과 동일) */
|
|
export interface CauserBurdenSubmitRequest extends SewerageFinanceSubmitRequestBase {
|
|
submitList: CauserBurdenSaveItem[];
|
|
}
|
|
|
|
export type CauserBurdenSubmitItem = CauserBurdenSaveItem;
|
|
|
|
/** 하수도재정 조회 공통 요청 파라미터 */
|
|
export interface SewerageFinanceRequestParams {
|
|
ctpvNm?: string;
|
|
sggNm?: string;
|
|
sewerBzmnCd?: string;
|
|
statsYr?: string;
|
|
mode?: string;
|
|
}
|
|
|
|
export interface StatisticsInputSewerageFinanceService {
|
|
getSewerageFinanceSettleList(
|
|
params: SewerageFinanceSettleRequestParams,
|
|
): Promise<SewerageFinanceSettleApiResponse>;
|
|
saveSewerageFinanceSettle(
|
|
request: SewerageFinanceSettleSaveRequest,
|
|
): Promise<SewerageFinanceSettleSaveResponse>;
|
|
submitSewerageFinanceSettle(
|
|
request: SewerageFinanceSettleSubmitRequest,
|
|
): Promise<SewerageFinanceSettleSubmitResponse>;
|
|
getSewerageChargeList(
|
|
params: SewerageChargeRequestParams,
|
|
): Promise<SewerageChargeApiResponse>;
|
|
saveSewerageCharge(
|
|
request: SewerageChargeSaveRequest,
|
|
): Promise<SewerageChargeSaveResponse>;
|
|
submitSewerageCharge(
|
|
request: SewerageChargeSubmitRequest,
|
|
): Promise<SewerageFinanceSubmitResponse>;
|
|
getSewerageUsageFeeList(
|
|
params: SewerageUsageFeeRequestParams,
|
|
): Promise<SewerageUsageFeeApiResponse>;
|
|
saveSewerageUsageFee(
|
|
request: SewerageUsageFeeSaveRequest,
|
|
): Promise<SewerageUsageFeeSaveResponse>;
|
|
submitSewerageUsageFee(
|
|
request: SewerageUsageFeeSubmitRequest,
|
|
): Promise<SewerageFinanceSubmitResponse>;
|
|
getCauserBurdenList(
|
|
params: CauserBurdenRequestParams,
|
|
): Promise<CauserBurdenApiResponse>;
|
|
saveCauserBurden(
|
|
request: CauserBurdenSaveRequest,
|
|
): Promise<CauserBurdenSaveResponse>;
|
|
submitCauserBurden(
|
|
request: CauserBurdenSubmitRequest,
|
|
): Promise<SewerageFinanceSubmitResponse>;
|
|
}
|