Working on DART api at home

This commit is contained in:
2023-07-17 06:45:29 +09:00
parent 99b8fa7d28
commit eb9ee317c7
6 changed files with 306 additions and 5 deletions

View File

@@ -1403,7 +1403,7 @@ extension DomesticDart {
///
public let auditorOpinion: String?
///
public let auditorReportSpecialNote: String
public let auditorReportSpecialNote: String?
///
public let emphasisNote: String?
///
@@ -2154,9 +2154,9 @@ extension DomesticDart {
///
public let headcount: String
///
public let totalPaymentAmount: String?
public let totalPaymentAmount: String
/// 1
public let averagePaymentAmount: String?
public let averagePaymentAmount: String
///
public let remark: String
@@ -2166,8 +2166,8 @@ extension DomesticDart {
case corporationCode = "corp_code"
case corporationName = "corp_name"
case headcount = "nmpr"
case totalPaymentAmount = "pymnt_totamt"
case averagePaymentAmount = "psn1_avrg_pymntamt"
case totalPaymentAmount = "mendng_totamt"
case averagePaymentAmount = "jan_avrg_mendng_am"
case remark = "rm"
}
}

View File

@@ -1047,10 +1047,76 @@ extension DomesticDart {
/// - 29
///
public struct TreasuryStockDisposalDecisionRequest: DartRequest {
public typealias KResult = TreasuryStockDisposalDecisionResult
public var url: String {
"/api/tsstkDpDecsn.json"
}
public var method: Method { .get }
public var header: [String : String?] {
[:]
}
public var body: [String: Any] {
return [
"crtfc_key": openApiKey,
"corp_code": corporationCode,
"bgn_de": startDate.yyyyMMdd,
"end_de": endDate.yyyyMMdd
]
}
public var result: KResult? = nil
public let openApiKey: String
let corporationCode: String
let startDate: Date
let endDate: Date
public init(openApiKey: String, corporationCode: String, startDate: Date, endDate: Date) {
self.openApiKey = openApiKey
self.corporationCode = corporationCode
self.startDate = startDate
self.endDate = endDate
}
}
/// - 30
///
public struct TreasuryStockGainDecisionRequest: DartRequest {
public typealias KResult = TreasuryStockGainDecisionResult
public var url: String {
"/api/tsstkAqDecsn.json"
}
public var method: Method { .get }
public var header: [String : String?] {
[:]
}
public var body: [String: Any] {
return [
"crtfc_key": openApiKey,
"corp_code": corporationCode,
"bgn_de": startDate.yyyyMMdd,
"end_de": endDate.yyyyMMdd
]
}
public var result: KResult? = nil
public let openApiKey: String
let corporationCode: String
let startDate: Date
let endDate: Date
public init(openApiKey: String, corporationCode: String, startDate: Date, endDate: Date) {
self.openApiKey = openApiKey
self.corporationCode = corporationCode
self.startDate = startDate
self.endDate = endDate
}
}
/// - 31 ·
@@ -3799,4 +3865,227 @@ extension DomesticDart {
}
}
}
public struct TreasuryStockDisposalDecisionResult: Codable {
public let status: String
public let message: String
public let list: [Item]?
private enum CodingKeys: String, CodingKey {
case status
case message
case list
}
public struct Item: Codable {
///
public let receiptNo: String
///
public let marketType: MarketType
///
public let corporationCode: String
///
public let corporationName: String
/// ()()
public let disposalPlanningQuantity_CommonStock: String
/// ()()
public let disposalPlanningQuantity_EtcStock: String
/// ()()
public let disposalTargetPrice_CommonStock: String
/// ()()
public let disposalTargetPrice_EtcStock: String
/// ()()
public let disposalPlanningPrice_CommonStock: String
/// ()()
public let disposalPlanningPrice_EtcStock: String
/// ()
public let disposalPlanningPeriod_StartDate: String
/// ()
public let disposalPlanningPeroid_EndDate: String
///
public let disposalPurpose: String
/// ( ())
public let disposalMethod_SellThroughMarket: String
/// (())
public let disposalMethod_OffHoursBlockTrading: String
/// (())
public let disposalMethod_OverTheCounter: String
/// (())
public let disposalMethod_Etc: String
///
public let consignedInvestmentBroker: String
/// ( ()())
public let treasuryStockOwnStatus_GainWithinDividend_CommonStock: String
/// ( ()((%)))
public let treasuryStockOwnStatus_GainWithinDividend_CommonStockRatio: String
/// ( ()())
public let treasuryStockOwnStatus_GainWithinDividend_EtcStock: String
/// ( ()((%)))
public let treasuryStockOwnStatus_GainWithinDividend_EtcStockRatio: String
/// (()())
public let treasuryStockOwnStatus_EtcGain_CommonStock: String
/// (()((%)))
public let treasuryStockOwnStatus_EtcGain_CommonStockRatio: String
/// (()())
public let treasuryStockOwnStatus_EtcGain_EtcStock: String
/// (()((%)))
public let treasuryStockOwnStatus_EtcGain_EtcStockRatio: String
///
public let disposalDecisionDate: String
/// (())
public let outsideDirectorsAttended: String
/// (())
public let outsideDirectorsAbsent: String
/// ( )
public let auditorAttended: String
/// 1 ()
public let day1SalesOrderLimit_CommonStock: String
/// 1 ()
public let day1SalesOrderLimit_EtcStock: String
private enum CodingKeys: String, CodingKey {
case receiptNo = "rcept_no"
case marketType = "corp_cls"
case corporationCode = "corp_code"
case corporationName = "corp_name"
case disposalPlanningQuantity_CommonStock = "dppln_stk_ostk"
case disposalPlanningQuantity_EtcStock = "dppln_stk_estk"
case disposalTargetPrice_CommonStock = "dpstk_prc_ostk"
case disposalTargetPrice_EtcStock = "dpstk_prc_estk"
case disposalPlanningPrice_CommonStock = "dppln_prc_ostk"
case disposalPlanningPrice_EtcStock = "dppln_prc_estk"
case disposalPlanningPeriod_StartDate = "dpprpd_bgd"
case disposalPlanningPeroid_EndDate = "dpprpd_edd"
case disposalPurpose = "dp_pp"
case disposalMethod_SellThroughMarket = "dp_m_mkt"
case disposalMethod_OffHoursBlockTrading = "dp_m_ovtm"
case disposalMethod_OverTheCounter = "dp_m_otc"
case disposalMethod_Etc = "dp_m_etc"
case consignedInvestmentBroker = "cs_iv_bk"
case treasuryStockOwnStatus_GainWithinDividend_CommonStock = "aq_wtn_div_ostk"
case treasuryStockOwnStatus_GainWithinDividend_CommonStockRatio = "aq_wtn_div_ostk_rt"
case treasuryStockOwnStatus_GainWithinDividend_EtcStock = "aq_wtn_div_estk"
case treasuryStockOwnStatus_GainWithinDividend_EtcStockRatio = "aq_wtn_div_estk_rt"
case treasuryStockOwnStatus_EtcGain_CommonStock = "eaq_ostk"
case treasuryStockOwnStatus_EtcGain_CommonStockRatio = "eaq_ostk_rt"
case treasuryStockOwnStatus_EtcGain_EtcStock = "eaq_estk"
case treasuryStockOwnStatus_EtcGain_EtcStockRatio = "eaq_estk_rt"
case disposalDecisionDate = "dp_dd"
case outsideDirectorsAttended = "od_a_at_t"
case outsideDirectorsAbsent = "od_a_at_b"
case auditorAttended = "adt_a_atn"
case day1SalesOrderLimit_CommonStock = "d1_slodlm_ostk"
case day1SalesOrderLimit_EtcStock = "d1_slodlm_estk"
}
}
}
public struct TreasuryStockGainDecisionResult: Codable {
public let status: String
public let message: String
public let list: [Item]?
private enum CodingKeys: String, CodingKey {
case status
case message
case list
}
public struct Item: Codable {
///
public let receiptNo: String
///
public let marketType: MarketType
///
public let corporationCode: String
///
public let corporationName: String
/// ()()
public let gainPlanningQuantity_CommonStock: String
/// ()()
public let gainPlanningQuantity_EtcStock: String
/// ()()
public let gainPlanningPrice_CommonStock: String
/// ()()
public let gainPlanningPrice_EtcStock: String
/// ()
public let gainExpectationPeroid_StartDate: String
/// ()
public let gainExpectationPeroid_EndDate: String
/// ()
public let holdExpectationPeroid_StartDate: String
/// ()
public let holdExpectationPeriod_EndDate: String
///
public let gainPurpose: String
///
public let gainMethod: String
///
public let consignedInvestmentBroker: String
/// ( ()())
public let treasuryStockOwnStatus_GainWithinDividend_CommonStock: String
/// ( ()((%)))
public let treasuryStockOwnStatus_GainWithinDividend_CommonStockRatio: String
/// ( ()())
public let treasuryStockOwnStatus_GainWithinDividend_EtcStock: String
/// ( ()((%)))
public let treasuryStockOwnStatus_GainWithinDividend_EtcStockRatio: String
/// (()())
public let treasuryStockOwnStatus_EtcGain_CommonStock: String
/// (()((%)))
public let treasuryStockOwnStatus_EtcGain_CommonStockRatio: String
/// (()())
public let treasuryStockOwnStatus_EtcGain_EtcStock: String
/// (()((%)))
public let treasuryStockOwnStatus_EtcGain_EtcStockRatio: String
///
public let gainDecisionDate: String
/// (())
public let outsideDirectorsAttended: String
/// (())
public let outsideDirectorsAbsent: String
/// ( )
public let auditorAttended: String
/// 1 ()
public let day1PurchaseOrderLimit_CommonStock: String
/// 1 ()
public let day1PurchaseOrderLimit_EtcStock: String
private enum CodingKeys: String, CodingKey {
case receiptNo = "rcept_no"
case marketType = "corp_cls"
case corporationCode = "corp_code"
case corporationName = "corp_name"
case gainPlanningQuantity_CommonStock = "aqpln_stk_ostk"
case gainPlanningQuantity_EtcStock = "aqpln_stk_estk"
case gainPlanningPrice_CommonStock = "aqpln_prc_ostk"
case gainPlanningPrice_EtcStock = "aqpln_prc_estk"
case gainExpectationPeroid_StartDate = "aqexpd_bgd"
case gainExpectationPeroid_EndDate = "aqexpd_edd"
case holdExpectationPeroid_StartDate = "hdexpd_bgd"
case holdExpectationPeriod_EndDate = "hdexpd_edd"
case gainPurpose = "aq_pp"
case gainMethod = "aq_mth"
case consignedInvestmentBroker = "cs_iv_bk"
case treasuryStockOwnStatus_GainWithinDividend_CommonStock = "aq_wtn_div_ostk"
case treasuryStockOwnStatus_GainWithinDividend_CommonStockRatio = "aq_wtn_div_ostk_rt"
case treasuryStockOwnStatus_GainWithinDividend_EtcStock = "aq_wtn_div_estk"
case treasuryStockOwnStatus_GainWithinDividend_EtcStockRatio = "aq_wtn_div_estk_rt"
case treasuryStockOwnStatus_EtcGain_CommonStock = "eaq_ostk"
case treasuryStockOwnStatus_EtcGain_CommonStockRatio = "eaq_ostk_rt"
case treasuryStockOwnStatus_EtcGain_EtcStock = "eaq_estk"
case treasuryStockOwnStatus_EtcGain_EtcStockRatio = "eaq_estk_rt"
case gainDecisionDate = "aq_dd"
case outsideDirectorsAttended = "od_a_at_t"
case outsideDirectorsAbsent = "od_a_at_b"
case auditorAttended = "adt_a_atn"
case day1PurchaseOrderLimit_CommonStock = "d1_prodlm_ostk"
case day1PurchaseOrderLimit_EtcStock = "d1_prodlm_estk"
}
}
}
}

View File

@@ -0,0 +1 @@
{"status":"000","message":"정상","list":[{"rcept_no":"20190429000701","corp_cls":"Y","corp_code":"00121932","corp_name":"미원상사","od_a_at_t":"0","od_a_at_b":"3","adt_a_atn":"-","cs_iv_bk":"-","aq_wtn_div_ostk":"-","aq_wtn_div_ostk_rt":"-","aq_wtn_div_estk":"-","aq_wtn_div_estk_rt":"-","eaq_ostk":"846","eaq_ostk_rt":"0.02","eaq_estk":"-","eaq_estk_rt":"-","dppln_stk_ostk":"846","dppln_stk_estk":"-","dpstk_prc_ostk":"43,350","dpstk_prc_estk":"-","dppln_prc_ostk":"36,674,100","dppln_prc_estk":"-","dpprpd_bgd":"2019년 04월 30일","dpprpd_edd":"2019년 04월 30일","dp_pp":"무상증자시 발생한 단주 주식 \n우리사주조합에 매각","dp_m_mkt":"-","dp_m_ovtm":"-","dp_m_otc":"846","dp_m_etc":"-","dp_dd":"2019년 04월 29일","d1_slodlm_ostk":"-","d1_slodlm_estk":"-"}]}

View File

@@ -0,0 +1 @@
{"status":"000","message":"정상","list":[{"rcept_no":"20191204000063","corp_cls":"Y","corp_code":"00164742","corp_name":"현대자동차","od_a_at_t":"6","od_a_at_b":"-","adt_a_atn":"-","aqpln_stk_ostk":"2,136,681","aqpln_stk_estk":"632,707","aqpln_prc_ostk":"259,606,741,500","aqpln_prc_estk":"48,811,874,300","aqexpd_bgd":"2019년 12월 05일","aqexpd_edd":"2020년 03월 04일","hdexpd_bgd":"-","hdexpd_edd":"-","aq_pp":"자기주식 취득을 통한 주주가치 제고","aq_mth":"장내매수","cs_iv_bk":"현대차증권","aq_wtn_div_ostk":"10,954,627","aq_wtn_div_ostk_rt":"5.1","aq_wtn_div_estk":"2,956,430","aq_wtn_div_estk_rt":"4.7","eaq_ostk":"-","eaq_ostk_rt":"-","eaq_estk":"-","eaq_estk_rt":"-","aq_dd":"2019년 12월 04일","d1_prodlm_ostk":"213,668","d1_prodlm_estk":"36,485"},{"rcept_no":"20191024000248","corp_cls":"Y","corp_code":"00164742","corp_name":"현대자동차","od_a_at_t":"6","od_a_at_b":"-","adt_a_atn":"-","aqpln_stk_ostk":"778,575","aqpln_stk_estk":"-","aqpln_prc_ostk":"94,207,575,000","aqpln_prc_estk":"-","aqexpd_bgd":"2019년 10월 25일","aqexpd_edd":"2019년 11월 27일","hdexpd_bgd":"2019년 10월 25일","hdexpd_edd":"2019년 11월 29일","aq_pp":"우리사주조합에 자기주식 출연","aq_mth":"장내매수","cs_iv_bk":"현대차증권","aq_wtn_div_ostk":"10,953,667","aq_wtn_div_ostk_rt":"5.1","aq_wtn_div_estk":"2,956,430","aq_wtn_div_estk_rt":"4.7","eaq_ostk":"-","eaq_ostk_rt":"-","eaq_estk":"-","eaq_estk_rt":"-","aq_dd":"2019년 10월 24일","d1_prodlm_ostk":"126,413","d1_prodlm_estk":"-"}]}

View File

@@ -88,6 +88,8 @@ class DartResult_Tests: XCTestCase {
validateJson(DomesticDart.BusinessTransferDecisionResult.self)
validateJson(DomesticDart.TreasuryStockGainTrustContractCancelDecisionResult.self)
validateJson(DomesticDart.TreasuryStockGainTrustContractSignDecisionResult.self)
validateJson(DomesticDart.TreasuryStockDisposalDecisionResult.self)
validateJson(DomesticDart.TreasuryStockGainDecisionResult.self)
/// Securities Report
validateJson(DomesticDart.StockExchangeTransferResult.self)

View File

@@ -121,6 +121,8 @@
34F844932A639B0E00152D98 /* BusinessInheritanceDecisionResult.json in Resources */ = {isa = PBXBuildFile; fileRef = 34F844922A639B0E00152D98 /* BusinessInheritanceDecisionResult.json */; };
34F844952A63A24A00152D98 /* TreasuryStockGainTrustContractCancelDecisionResult.json in Resources */ = {isa = PBXBuildFile; fileRef = 34F844942A63A24A00152D98 /* TreasuryStockGainTrustContractCancelDecisionResult.json */; };
34F844972A63A26C00152D98 /* TreasuryStockGainTrustContractSignDecisionResult.json in Resources */ = {isa = PBXBuildFile; fileRef = 34F844962A63A26C00152D98 /* TreasuryStockGainTrustContractSignDecisionResult.json */; };
34F844992A64952500152D98 /* TreasuryStockDisposalDecisionResult.json in Resources */ = {isa = PBXBuildFile; fileRef = 34F844982A64952500152D98 /* TreasuryStockDisposalDecisionResult.json */; };
34F8449B2A64955B00152D98 /* TreasuryStockGainDecisionResult.json in Resources */ = {isa = PBXBuildFile; fileRef = 34F8449A2A64955B00152D98 /* TreasuryStockGainDecisionResult.json */; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
@@ -249,6 +251,8 @@
34F844922A639B0E00152D98 /* BusinessInheritanceDecisionResult.json */ = {isa = PBXFileReference; lastKnownFileType = text.json; path = BusinessInheritanceDecisionResult.json; sourceTree = "<group>"; };
34F844942A63A24A00152D98 /* TreasuryStockGainTrustContractCancelDecisionResult.json */ = {isa = PBXFileReference; lastKnownFileType = text.json; path = TreasuryStockGainTrustContractCancelDecisionResult.json; sourceTree = "<group>"; };
34F844962A63A26C00152D98 /* TreasuryStockGainTrustContractSignDecisionResult.json */ = {isa = PBXFileReference; lastKnownFileType = text.json; path = TreasuryStockGainTrustContractSignDecisionResult.json; sourceTree = "<group>"; };
34F844982A64952500152D98 /* TreasuryStockDisposalDecisionResult.json */ = {isa = PBXFileReference; lastKnownFileType = text.json; path = TreasuryStockDisposalDecisionResult.json; sourceTree = "<group>"; };
34F8449A2A64955B00152D98 /* TreasuryStockGainDecisionResult.json */ = {isa = PBXFileReference; lastKnownFileType = text.json; path = TreasuryStockGainDecisionResult.json; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
@@ -541,6 +545,8 @@
34F844922A639B0E00152D98 /* BusinessInheritanceDecisionResult.json */,
34F844942A63A24A00152D98 /* TreasuryStockGainTrustContractCancelDecisionResult.json */,
34F844962A63A26C00152D98 /* TreasuryStockGainTrustContractSignDecisionResult.json */,
34F844982A64952500152D98 /* TreasuryStockDisposalDecisionResult.json */,
34F8449A2A64955B00152D98 /* TreasuryStockGainDecisionResult.json */,
);
path = MajorReport;
sourceTree = "<group>";
@@ -665,6 +671,7 @@
34F8442C2A6211B000152D98 /* DirectorAuditorSalaryResult.json in Resources */,
34F844792A6256DB00152D98 /* OverseaDelistingResult.json in Resources */,
34F844692A6219CC00152D98 /* DissolutionReasonResult.json in Resources */,
34F8449B2A64955B00152D98 /* TreasuryStockGainDecisionResult.json in Resources */,
34F844752A621ABA00152D98 /* LawsuitLodgeResult.json in Resources */,
34F844322A6211FC00152D98 /* AuditingNameOpinionResult.json in Resources */,
34F8443C2A62154000152D98 /* RecapitalizationResult.json in Resources */,
@@ -673,6 +680,7 @@
34F844422A6215C000152D98 /* LargestStockholderResult.json in Resources */,
34F844482A62160C00152D98 /* ExecutiveResult.json in Resources */,
34F8444E2A62167000152D98 /* DirectorAuditorAllSalaryResult.json in Resources */,
34F844992A64952500152D98 /* TreasuryStockDisposalDecisionResult.json in Resources */,
34F8446F2A621A3300152D98 /* PaidOrFreeIssueOfNewStockDecisionResult.json in Resources */,
34F8447F2A625EFB00152D98 /* WarrantBondIssueDecisionResult.json in Resources */,
34F8445C2A62188400152D98 /* BlockSharesOwnershipResult.json in Resources */,