メインコンテンツまでスキップ

プロジェクトの更新


説明

指定した ID のプロジェクトを更新します。

必要権限

プロジェクトの管理

URL

PUT /project/projects/{projectIds}

パスパラメーター

名前必須か説明
projectIdsstringプロジェクトID

リクエストボディ

名前必須か説明
namestring×プロジェクト名
codestring×プロジェクトのコード
descriptionstring×プロジェクトの説明
managerIdstring×管理者ID
manager
string×管理者

ユーザーの「ログイン名」、「LDAPログイン名」、「メールアドレス」、「名前」に完全一致するユーザーのIDを管理者IDとして更新処理を行います。
organizationIdstring×所属する組織ID
organizationstring×所属する組織

組織の「コード」、「名前」に完全一致する組織のIDを組織IDとして更新処理を行います。
userGroupChangeUserGroupChange×変更するユーザーグループ
memberChangeMemberChange×変更するメンバー情報
forceUnlockboolean×強制的にロック解除するか

true:ロックを解除する。
false:ロックを解除しない。
plannedStartDateDateTime×プロジェクト開始日
plannedFinishDateDateTime×プロジェクト終了日
standardUnitCostdouble×標準コスト単価
isFinishedboolean×プロジェクトを終了するか

true:プロジェクトを終了する。
false:プロジェクトを稼働中にする。
projectCategories<string, string>[]×プロジェクトカテゴリ
metadata<string, string>×キーと値のコレクション
- 追加時 : 値が null の項目を除いて設定する
- 更新時 : キーが指定されなかった項目は変更しない。
 (値が null に指定された項目は削除する )

レスポンス

名前説明
UpdatedProject[]プロジェクトID分のレスポンスを返す。

エラーケース

  • コードが未指定
  • 指定した ID が存在しない
  • 指定したユーザーが存在しない
  • 指定した所属組織ID が存在しない
  • 指定した所属組織 が存在しない
  • 管理者IDに指定したユーザーが存在しない
  • 管理者に指定したユーザーが存在しない
  • コードが重複する
  • 開始日と終了日が不正である
  • プロジェクトの管理者にユーザー以外を指定する
  • メンバから管理者を削除しようとする
  • プロジェクトの編集権限がない
  • プロジェクトが既にロックされている
  • 他ユーザーがロックしたプロジェクトをロック解除ししようとする
  • 対象プロジェクトがロックされている
  • プロジェクト固有のユーザーグループにプロジェクトメンバーでないパーティを追加しようとする

特記事項

  • code のユニークチェックを行うかは、システム設定の「プロジェクトコードをユニークチェックするか」の設定に従います。
  • 管理者の所属組織を変更した場合や管理者を他ユーザーに変更した場合でも、プロジェクトの所属組織が自動的に更新されることはありません。
  • プロジェクトの期間(開始日、終了日)は、プロジェクトのアイテムの期間に制約を与えません。
  • プロジェクトを完了 (isFinished=true) しても、プロジェクトの編集やアイテムの編集には影響しません。
  • コスト閲覧権限がない場合はコストの設定は無視します。
  • プロジェクトメンバーを削除しても、ワークアイテムのリソースからは削除されません。
  • レスポンスの「addedMemberIds」、「addedUserGroupIds」は初回登録時のみ返します。
    2回目以降(一旦削除し、再度登録した場合)に登録した場合の Id は、次のAPIから取得してください。
    プロジェクトの取得API

サンプル

プロジェクトを指定して、プロジェクトメンバーを追加する

PUT /project/projects/6
Request Body
{
"name": "S機器の開発",
"managerId": "21",
"plannedStartDate": "2018-11-05",
"plannedFinishDate": "2019-03-20",
"memberChange":{
"adds":[
{"partyId":"43","partyType":"User","unitCost":3500}
]
}
}
Response
200 OK

[
{
"id":"6",
"addedMemberIds":[
"200"
]
}
]

型定義

UpdatedProject

名前必須か説明
idstringプロジェクトID
addedMemberIdsstring[]×追加したプロジェクトメンバーID (特記事項を参照ください)
addedUserGroupIdsstring[]×追加したユーザーグループID (特記事項を参照ください)

UserGroupChange

名前必須か説明
addsUserGroupAdd[]×追加するユーザーグループ
updatesUserGroupUpdate[]×更新するユーザーグループ
removesstring×削除するユーザーグループ
(カンマ区切りで複数指定可能です。)

UserGroupAdd

名前必須か説明
addUserIdsstring×ユーザーグループに追加するユーザーID
namestring名前
englishNamestring×英語名
codestring×コード
descriptionstring×説明
displayOrderdouble×ユーザーグループの表示順序。
UIで表示する際の表示順序を示します。

UserGroupUpdate

名前必須か説明
idsstringユーザーグループID
addUserIdsstring×ユーザーグループに追加するユーザーID
removeUserIdsstring×ユーザーグループから削除するユーザーID
namestring×名前
englishNamestring×英語名
codestring×コード
descriptionstring×説明
displayOrderdouble×ユーザーグループの表示順序。
UIで表示する際の表示順序を示します。

MemberChange

名前必須か説明
addsMemberAdd[]×追加するメンバ
updatesMemberUpdate[]×更新するメンバ
removesstring×削除するメンバ
・ Get Projectで取得した 「members」の id(Member型) を指定してください。
・カンマ区切りで複数指定可能です。
removeUsersstring×ユーザー

ユーザーの「ログイン名」、「LDAPログイン名」、「メールアドレス」、「名前」に完全一致するユーザーのメンバーIDを取得し、削除するメンバーIDとして更新処理を行います。

MemberAdd

名前必須か説明
partyIdstring×パーティID

partyIdフィールドとuserフィールドのどちらかを指定する必要があります。
partyTypestringメンバーの種類。
以下の値を設定できます。
・User: ユーザー
userstring×ユーザー

ユーザーの「ログイン名」、「LDAPログイン名」、「メールアドレス」、「名前」に完全一致するユーザーのIDをメンバーのユーザーIDとして追加処理を行います。
unitCostdouble×コスト単価

MemberUpdate

名前必須か説明
usersstring×ユーザー

ユーザーの「ログイン名」、「LDAPログイン名」、「メールアドレス」、「名前」に完全一致するユーザーのIDをメンバーのユーザーIDとして更新処理を行います。
idsstringメンバID
unitCostdouble×コスト単価
restoreboolean×エンティティ復元指示