blob: 1edee7ed5e0a6078b4fb5b6ee743ba74d3189aab (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
|
<?xml version='1.0' encoding='UTF-8'?>
<!-- WSDL: eVCP 품질서버(60.101.108.100) <> S-ERP ECC 기술영업 입찰 프로젝트 -->
<!-- Program ID: IF_ECC_EVCP_BIDDING_PROJECT -->
<!-- 서비스 구분을 위한 namespace는 http://60.101.108.100/ 할당하고, 운영 전 실제 도메인 발급받으면 변경 -->
<wsdl:definitions name="IF_ECC_EVCP_BIDDING_PROJECT" targetNamespace="http://60.101.108.100/"
xmlns:ns1="http://schemas.xmlsoap.org/soap/http"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:tns="http://60.101.108.100/"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<!-- 데이터 타입 정의 -->
<wsdl:types>
<!-- targetNamespace, xmlns:tns 변경 -->
<xs:schema attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="http://60.101.108.100/"
xmlns:tns="http://60.101.108.100/"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<!-- DB로 직접 받는 게 아니고, 애플리케이션 레벨에서 응답을 처리하므로 카멜케이스로 네이밍(단 I/F 정의서에서는 DB 사양 안내) -->
<xs:complexType name="IF_ECC_EVCP_BIDDING_PROJECTReq">
<xs:sequence>
<!-- 입찰 프로젝트 -->
<xs:element maxOccurs="unbounded" minOccurs="0" name="biddingProjects" type="tns:biddingProjects"/>
<!-- 입찰 프로젝트의 라인 아이템 -->
<xs:element maxOccurs="unbounded" minOccurs="0" name="projectSeries" type="tns:projectSeries"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="biddingProjects">
<xs:sequence>
<!--
minOccurs, maxOccurs Default Values
- Occurrence constraints minOccurs and maxOccurs default to 1.
Common Cases Explained
<xsd:element name="A"/> means A is required and must appear exactly once. (반복불가 필수값)
<xsd:element name="A" minOccurs="0"/> means A is optional and may appear at most once. (반복가능 비필수값)
<xsd:element name="A" maxOccurs="unbounded"/> means A is required and may repeat an unlimited number of times. (반복가능 필수값)
<xsd:element name="A" minOccurs="0" maxOccurs="unbounded"/> means A is optional and may repeat an unlimited number of times. (반복가능 비필수값)
-->
<!-- 견적프로젝트번호 -->
<xs:element name="pspid" type="xs:string"/>
<!-- 견적프로젝트명 -->
<xs:element minOccurs="0" name="projNm" type="xs:string"/>
<!-- 부문(S/M) - Shipbuilding / Marine -->
<xs:element minOccurs="0" name="sector" type="xs:string"/>
<!-- 척수 -->
<xs:element minOccurs="0" name="projMsrm" type="xs:decimal"/>
<!-- 선주코드 -->
<xs:element minOccurs="0" name="kunnr" type="xs:string"/>
<!-- 선주명 -->
<xs:element minOccurs="0" name="kunnrNm" type="xs:string"/>
<!-- 선급코드 -->
<xs:element minOccurs="0" name="cls1" type="xs:string"/>
<!-- 선급명 -->
<xs:element minOccurs="0" name="cls1Nm" type="xs:string"/>
<!-- 선종코드 -->
<xs:element minOccurs="0" name="ptype" type="xs:string"/>
<!-- 선종명 -->
<xs:element minOccurs="0" name="ptypeNm" type="xs:string"/>
<!-- 선형코드 -->
<xs:element minOccurs="0" name="pmodelCd" type="xs:string"/>
<!-- 선형명 -->
<xs:element minOccurs="0" name="pmodelNm" type="xs:string"/>
<!-- 선형크기 -->
<xs:element minOccurs="0" name="pmodelSz" type="xs:string"/>
<!-- 선형단위 -->
<xs:element minOccurs="0" name="pmodelUom" type="xs:string"/>
<!-- 견적상태코드 -->
<xs:element minOccurs="0" name="txt04" type="xs:string"/>
<!-- 견적상태명 -->
<xs:element minOccurs="0" name="txt30" type="xs:string"/>
<!-- 견적대표PM 성명 -->
<xs:element minOccurs="0" name="estmPm" type="xs:string"/>
<!-- 조선/해양 구분. 조선일 경우 NULL, 해양일 경우 'X' -->
<xs:element minOccurs="0" name="shipMHull" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="projectSeries">
<xs:sequence>
<!-- 견적프로젝트번호 -->
<xs:element name="pspid" type="xs:string"/>
<!-- 시리즈번호 -->
<xs:element name="sersNo" type="xs:string"/>
<!-- Steel Cutting Date -->
<xs:element minOccurs="0" name="scDt" type="xs:string"/>
<!-- Keel Laying Date -->
<xs:element minOccurs="0" name="klDt" type="xs:string"/>
<!-- Launching Date -->
<xs:element minOccurs="0" name="lcDt" type="xs:string"/>
<!-- Delivery Date -->
<xs:element minOccurs="0" name="dlDt" type="xs:string"/>
<!-- 도크코드 -->
<xs:element minOccurs="0" name="dockNo" type="xs:string"/>
<!-- 도크명 -->
<xs:element minOccurs="0" name="dockNm" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="IF_ECC_EVCP_BIDDING_PROJECTReq" nillable="true" type="tns:IF_ECC_EVCP_BIDDING_PROJECTReq"/>
</xs:schema>
</wsdl:types>
<!-- 메시지 정의는 받은 샘플대로 작성 -->
<!-- 응답 메시지 정의: 별도의 응답 없이 데이터를 받기만 하므로 Response 절은 비어있다. -->
<wsdl:message name="processResponse">
</wsdl:message>
<!-- 요청 메시지 정의: 위에서 타입 정의한 IF_ECC_EVCP_BIDDING_PROJECTReq 으로 요청을 날린다. -->
<wsdl:message name="process">
<wsdl:part element="tns:IF_ECC_EVCP_BIDDING_PROJECTReq" name="IF_ECC_EVCP_BIDDING_PROJECTReq">
</wsdl:part>
</wsdl:message>
<!-- portType은 message를 묶어서 만드는 작업을 정의한다. -->
<wsdl:portType name="IF_ECC_EVCP_BIDDING_PROJECT">
<wsdl:operation name="process">
<wsdl:input message="tns:process" name="process">
</wsdl:input>
<wsdl:output message="tns:processResponse" name="processResponse">
</wsdl:output>
</wsdl:operation>
</wsdl:portType>
<!-- binding은 프로토콜 연결 방법을 정의한다. -->
<wsdl:binding name="IF_ECC_EVCP_BIDDING_PROJECTServiceSoapBinding" type="tns:IF_ECC_EVCP_BIDDING_PROJECT">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="process">
<soap:operation soapAction="" style="document"/>
<wsdl:input name="process">
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output name="processResponse">
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<!-- service/port 는 실제 연결 방법을 정의한다. -->
<wsdl:service name="IF_ECC_EVCP_BIDDING_PROJECTService">
<wsdl:port binding="tns:IF_ECC_EVCP_BIDDING_PROJECTServiceSoapBinding" name="IF_ECC_EVCP_BIDDING_PROJECTPort">
<!-- 엔드포인트 주소는 프로그램 ID와 통일한다. -->
<soap:address location="http://60.101.108.100/api/IF_ECC_EVCP_BIDDING_PROJECT"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
|