Skip to content

Commit fbe8a36

Browse files
authored
Merge pull request #53 from kurusugawa-computer/feature/v0.15.1
労務管理系のAPIを追加
2 parents e0620c1 + 30b7d0a commit fbe8a36

File tree

6 files changed

+82
-13
lines changed

6 files changed

+82
-13
lines changed

annofabapi/__version__.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
__version__ = '0.15.0'
1+
__version__ = '0.15.1'

annofabapi/api.py

+68
Original file line numberDiff line numberDiff line change
@@ -264,3 +264,71 @@ def refresh_token(self) -> Optional[Tuple[Dict[str, Any], requests.Response]]:
264264
content, response = self._request_wrapper('POST', '/refresh-token', request_body=request_body)
265265
self.token_dict = content
266266
return content, response
267+
268+
#########################################
269+
# Public Method : 労務関係API (将来的に大きく変更される可能性があります)
270+
# 労務管理がりようできる組織は限られています。利用する場合は、AnnoFabにお問い合わせください。
271+
#########################################
272+
def get_labor_control(
273+
self,
274+
query_params: Optional[Dict[str, Any]] = None
275+
) -> Tuple[Any, requests.Response]:
276+
"""労務管理関連データを一括で取得します。
277+
278+
279+
Args:
280+
query_params: Query Parameters
281+
282+
Returns:
283+
Tuple[Task, requests.Response]
284+
285+
286+
"""
287+
url_path = f'/labor-control'
288+
http_method = 'GET'
289+
keyword_params: Dict[str, Any] = {
290+
'query_params': query_params,
291+
}
292+
return self._request_wrapper(http_method, url_path, **keyword_params)
293+
294+
def put_labor_control(
295+
self,
296+
request_body: Dict[str, Any]
297+
) -> Tuple[Any, requests.Response]:
298+
"""労務管理関連データを更新します。
299+
300+
301+
Args:
302+
request_body: Request Body
303+
304+
Returns:
305+
Tuple[Task, requests.Response]
306+
307+
308+
"""
309+
url_path = f'/labor-control'
310+
http_method = 'PUT'
311+
keyword_params: Dict[str, Any] = {
312+
'request_body': request_body,
313+
}
314+
return self._request_wrapper(http_method, url_path, **keyword_params)
315+
316+
def delete_labor_control(
317+
self,
318+
data_id: str
319+
) -> Tuple[Any, requests.Response]:
320+
"""労務管理関連データを削除します。
321+
322+
323+
Args:
324+
data_id: 削除したい労務管理関連データID。
325+
326+
Returns:
327+
Tuple[Task, None]
328+
329+
330+
"""
331+
url_path = f'/labor-control/{data_id}'
332+
http_method = 'DELETE'
333+
keyword_params: Dict[str, Any] = {}
334+
return self._request_wrapper(http_method, url_path, **keyword_params)

generate/generate.sh

+13-12
Original file line numberDiff line numberDiff line change
@@ -36,20 +36,21 @@ fi
3636

3737
# swagger.yamlを修正したいときがあるので、
3838
if "${FLAG_DOWNLOAD}"; then
39-
curl https://annofab.com/docs/api/swagger.yaml --output swagger.yaml
40-
curl https://annofab.com/docs/api/swagger.v2.yaml --output swagger.v2.yaml
41-
curl https://annofab.com/docs/api/swagger-api-components.yaml --output swagger-api-components.yaml
39+
curl https://annofab.com/docs/api/swagger.yaml --output swagger/swagger.yaml
40+
curl https://annofab.com/docs/api/swagger.v2.yaml --output swagger/swagger.v2.yaml
41+
curl https://annofab.com/docs/api/swagger-api-components.yaml --output swagger/swagger-api-components.yaml
42+
# curl https://annofab.com/docs/api/swagger.internal.yaml --output swagger.internal.yaml
4243

4344
# インデントを1つ深くする
44-
sed -e "s/#\/schemas/#\/components\/schemas/g" -e "s/^/ /g" swagger-api-components.yaml --in-place
45+
sed -e "s/#\/schemas/#\/components\/schemas/g" -e "s/^/ /g" swagger/swagger-api-components.yaml --in-place
4546

46-
sed '/swagger-api-components.yaml/d' swagger.yaml > swagger-tmp.yaml
47-
cat swagger-tmp.yaml swagger-api-components.yaml > swagger.yaml
47+
sed '/swagger-api-components.yaml/d' swagger/swagger.yaml > swagger/swagger-tmp.yaml
48+
cat swagger/swagger-tmp.yaml swagger/swagger-api-components.yaml > swagger/swagger.yaml
4849

49-
sed '/swagger-api-components.yaml/d' swagger.v2.yaml > swagger-tmp.v2.yaml
50-
cat swagger-tmp.v2.yaml swagger-api-components.yaml > swagger.v2.yaml
50+
sed '/swagger-api-components.yaml/d' swagger/swagger.v2.yaml > swagger/swagger-tmp.v2.yaml
51+
cat swagger/swagger-tmp.v2.yaml swagger/swagger-api-components.yaml > swagger/swagger.v2.yaml
5152

52-
rm swagger-tmp.yaml swagger-tmp.v2.yaml
53+
rm swagger/swagger-tmp.yaml swagger/swagger-tmp.v2.yaml
5354
fi
5455

5556
JAVA_OPTS="-Dlog.level=info"
@@ -60,7 +61,7 @@ OPENAPI_GENERATOR_CLI_COMMON_OPTION="--generator-name python \
6061

6162
# v1 apiを生成
6263
docker run --rm -u `id -u`:`id -g` -v ${PWD}:/local -w /local -e JAVA_OPTS=${JAVA_OPTS} openapitools/openapi-generator-cli generate \
63-
--input-spec swagger.yaml \
64+
--input-spec swagger/swagger.yaml \
6465
${OPENAPI_GENERATOR_CLI_COMMON_OPTION} \
6566
--template-dir /local/template \
6667
-Dapis -DapiTests=false -DapiDocs=false \
@@ -75,7 +76,7 @@ rm -Rf out/openapi_client
7576

7677
# v2 apiを生成
7778
docker run --rm -u `id -u`:`id -g` -v ${PWD}:/local -w /local -e JAVA_OPTS=${JAVA_OPTS} openapitools/openapi-generator-cli generate \
78-
--input-spec swagger.v2.yaml \
79+
--input-spec swagger/swagger.v2.yaml \
7980
${OPENAPI_GENERATOR_CLI_COMMON_OPTION} \
8081
--template-dir /local/template \
8182
-Dapis -DapiTests=false -DapiDocs=false \
@@ -88,7 +89,7 @@ rm -Rf out/openapi_client
8889
# v1 apiのmodelからDataClass用のpythonファイルを生成する。
8990
docker run --rm -u `id -u`:`id -g` -v ${PWD}:/local -w /local -e JAVA_OPTS=${JAVA_OPTS} \
9091
openapitools/openapi-generator-cli generate \
91-
--input-spec swagger.yaml \
92+
--input-spec swagger/swagger.yaml \
9293
${OPENAPI_GENERATOR_CLI_COMMON_OPTION} \
9394
--template-dir /local/template_dataclass \
9495
-Dmodels -DmodelTests=false -DmodelDocs=false \
File renamed without changes.
File renamed without changes.

0 commit comments

Comments
 (0)