{primary} 実習実施先の基本情報 or 技能実習生の基本情報 or 送出機関のデータのCSVインポートを行います。
| メソッド | URI | Headers |
|---|---|---|
/api/csv/{type} |
Default |
type:インポートするCSVの区分
| パラメーター名 | 型 | 内容 | 特記 |
|---|---|---|---|
| type | int | インポートファイル種類 | Enum参照 |
/api/csv/1
各本ページのデータストアの項目に記載されている値をPOSTします。
成功時
| パラメーター名 | 型 | 内容 | 特記 |
|---|---|---|---|
| result | boolean | CSVインポート結果 | |
| errors | array | 成功のためエラーがないので空配列が返ってきます | |
| data | array | 空配列が返ってきます | |
| alert | array | 空配列が返ってきます |
{
"data" : [],
"result" : true,
"errors" : [],
"alert" : []
}
ステータスコード:200
| パラメーター名 | 型 | 内容 | 特記 |
|---|---|---|---|
| result | boolean | CSVインポート結果 | |
| error | List | 失敗した理由を配列 | |
| data | array | 空配列が返ってきます | |
| alert | array | 空配列が返ってきます |
{
"data" : [],
"result" : false,
"errors" : {
"content.0.country" : "送出国は必須項目です。",
"content.0.name" : "送出機関名は必須項目です。",
},
"alert" : []
}
{danger} 失敗時は200以外のエラーコードが返却されます。共通ルールのレスポンスをチェック。
{primary} 実習実施先、技能実習生、送出機関、共通して監理団体IDを登録します。
{warning} IDはNULLかどうかで、新規登録or更新の判別を行います。
所属している監理団体の変更は出来ないので、監理団体IDの変更は出来ません。
作成日時、更新日時、削除日時は自動で更新するためCSVファイルに入力する必要はありません。
{danger} 後々CSVの列の並び順変更要望あるかもしれないので下記一覧の並び順は順不同です。
| 論理名 | 物理名(フィールド名) | 型 | バリデーション | 備考 |
|---|---|---|---|---|
| ID | id | unsinged int | nullable / (※)ID存在チェック | nullの場合は新規登録、存在するIDの場合はそのレコードは更新、存在しないIDの場合はエラーとします。 |
| 区分 | company_type | tinyint | required / enum : CompanyTypeの値か? |
|
| 法人番号 | corporate_number | char(13) | nullable / 「区分:法人」時必須 / 数値のみ /固定桁数:13 | 「区分:個人」時、DBに明示的にNULLを登録します。 |
| 雇用保険適用事業所番号 | insurance_office_number | char(11) | nullable / 「区分:法人」時必須 / 数値のみ /固定桁数:11 | 「区分:個人」時、DBに明示的にNULLを登録します。 |
| 実習実施先名 | name | varchar(100) | nullable / 「区分:法人」時必須 / string / maxlength:100 | 「区分:個人」時、DBに明示的にNULLを登録します。 |
| 実習実施先名のふりがな | kana | varchar(100) | nullable / 「区分:法人」時必須 / string / maxlength:100 | 「区分:個人」時、DBに明示的にNULLを登録します。 |
| 実習実施先名のローマ字 | romaji | varchar(100) | nullable / 「区分:法人」時必須 / string / maxlength:100 | 「区分:個人」時、DBに明示的にNULLを登録します。 |
| 代表者役職 | representative_rank | varchar(50) | nullable / 「区分:法人」時必須 / string / maxlength:50 | 「区分:個人」時、DBに明示的にNULLを登録します。 |
| 代表者氏名(姓) | representative_sei | varchar(50) | required / string / maxlength:50 | |
| 代表者氏名(名) | representative_mei | varchar(50) | required / string / maxlength:50 | |
| 代表者氏名(ふりがな・せい) | representative_kana_sei | varchar(50) | required_doc / string / maxlength:50 | |
| 代表者氏名(ふりがな・めい) | representative_kana_mei | varchar(50) | required_doc / string / maxlength:50 | |
| 代表者氏名(ローマ字・Surname) | representative_family_name | varchar(50) | required_doc / string / maxlength:50 | |
| 代表者氏名(ローマ字・Given name) | representative_first_name | varchar(50) | required_doc / string / maxlength:50 | |
| 郵便区番号 | zip1 | char | required / 数値のみ / 固定桁数:3 | |
| 町域番号 | zip2 | char | required / 数値のみ / 固定桁数:4 | |
| 所在地 | address | varchar(255) | required / string / maxlength:255 | |
| 所在地(ふりがな) | address_kana | varchar(255) | required_doc / string / maxlength:255 | |
| 所在地(ローマ字) | address_romaji | varchar(255) | required_doc / string / maxlength:255 | |
| 電話番号 市外局番 | phone1 | varchar(5) | required / 数値のみ / maxlength:5 | |
| 電話番号 市内局番 | phone2 | varchar(4) | required / 数値のみ / maxlength:4 | |
| 電話番号 加入者番号 | phone3 | varchar(4) | required / 数値のみ / maxlength:4 | |
| FAX番号 市外局番 | fax1 | varchar(5) | nullable / 数値のみ / maxlength:5 / required_with:fax2,fax3 |
fax2,fax3が入力されている場合は必須 |
| FAX番号 市内局番 | fax2 | varchar(4) | nullable / 数値のみ / maxlength:4 / required_with:fax1,fax3 |
fax1,fax3が入力されている場合は必須 |
| FAX番号 加入者番号 | fax3 | varchar(4) | nullable / 数値のみ / maxlength:4 / required_with:fax1,fax2 |
fax1,fax2が入力されている場合は必須 |
| 資本金 | capital_amount | bigint | nullable / required_without:no_capital |
「資本金なし」の場合必須 |
| 資本金なし | no_capital | boolean | nullable / required_without:capital_amount |
「資本金」が入力されていない場合は必須 |
| 常勤社員人数(合計) | employee_number | int | required_doc / 数値のみ / maxlength:10 | |
| 常勤社員人数(事務) | business_staff_number | int | required_doc / 数値のみ / maxlength:10 | |
| 常勤社員人数(現場) | field_staff_number | int | required_doc / 数値のみ / maxlength:10 | |
| メールアドレス | varchar | nullable / email / maxlength:100 | ||
| 実習生受入経験 | acceptance_experience | tinyint | required / enum : AcceptanceExperienceの値か? |
|
| 実習実施者届出受理番号 | receipt_number | char(10) | nullable / 「実習生受入経験:なし」以外時必須 / 数値のみ / 固定桁数:10 | |
| 実習実施者届出受理年月日 | receipt_date | date | nullable / 「実習生受入経験:なし」以外時必須 / 日付形式 | |
| 労働保険番号 | insurance_number | char(14) | required_doc / 数値のみ / 固定桁数:14 | |
| 加盟申込書対応日 | membership_application_date | date | nullable / 日付形式 | |
| 実習生受入申込書対応日 | receipt_application_date | date | nullable / 日付形式 |
{warning} IDはNULLかどうかで、新規登録or更新の判別を行います。
新規、編集にかかわらず監理団体の変更はできません。
編集時は所属している実習実施先、所属事業所、送出国の変更は出来ないので、
監理団体、実習実施先(編集時)、所属事業所(編集時)、送出国(編集時)はCSVインポート処理での変更は出来ません。
ステータスに関しては、更新時に変更可能だと削除同等の処理が実現してしまうため、更新時は変更出来ないようにしております。
また、削除理由は管理画面でのみ変更可能のため、CSVインポート処理では変更できません。
作成日時、更新日時、削除日時は自動で更新するためCSVファイルに入力する必要はありません。
{danger} 後々CSVの列の並び順変更要望あるかもしれないので下記一覧の並び順は順不同です。
| 論理名 | 物理名(フィールド名) | 型 | バリデーション | 備考 |
|---|---|---|---|---|
| ID | id | unsinged int | nullable / (※)ID存在チェック | nullの場合は新規登録、存在するIDの場合はそのレコードは更新、存在しないIDの場合はエラーとします。 |
| 実習実施先企業ID | company_id | unsinged int | nullable / 実習ステータスが「実習中」時必須 / (※)ID存在チェック | |
| 所属先事業所ID | company_ofice_id | unsinged int | nullable / 実習ステータスが「実習中」時必須 / (※)ID存在チェック | |
| 実習生ステータス | status | tinyint | required / enum : TraineeStatusの値か? |
|
| 送出国 | country | tinyint | nullable / 実習ステータスが「実習中」時必須 / enum : Countryの値か? |
|
| 送出機関ID | sending_agency_id | unsinged int | nullable / 実習ステータスが「実習中」時必須 / (※)ID存在チェック | |
| 実習生氏名 ローマ字 | romaji | varchar(50) | required / string / maxlength:50 | |
| 実習生氏名 フリガナ | kana | varchar(50) | required_doc / string / maxlength:50 | |
| 実習生氏名 漢字 | kanji | varchar(50) | required_doc / string / maxlength:50 | |
| 国籍 | nationality | tinyint | required / enum : Countryの値か? |
|
| 出身地 | birthplace | varchar(100) | required_doc / string / maxlength:100 | |
| 母国語 | native_language | varchar(20) | required_doc / string / maxlength:50 | |
| 現住所 | current_address | varchar(255) | required_doc / string / maxlength:50 | |
| TEL 市外局番 | phone1 | varchar(5) | required_doc / 数値のみ / maxlength:5 | |
| TEL 市内局番 | phone2 | varchar(4) | required_doc / 数値のみ / maxlength:4 | |
| TEL 加入者番号 | phone3 | varchar(4) | required_doc / 数値のみ / maxlength:4 | |
| 性別 | sex | tinyint | required / enum : Sexの値か? |
|
| 生年月日 | birthday | date | required_doc / 日付形式:Y/m/d |
|
| パスポート番号 | passport_number | varchar(30) | required_doc / string / maxlength:30 | |
| パスポート 有効期限 | passport_expiration_date | date | required_doc / 日付形式:Y/m/d |
|
| 在留カード番号 | residence_card_number | varchar(12) | required_doc / 桁数固定:12 | |
| 入国日 | entry_date | date | nullable / 実習ステータスが「実習中」時必須 / 日付形式:Y/m/d |
|
| 認定番号 | certification_number | char(10) | nullable / 実習ステータスが「実習中」時必須 / string / 固定桁数:10 | |
| 修得等をしようとする技能等に係る職歴 カテゴリー (1) | job_category1 | tinyint | required_doc / 数値のみ / required_with:job_occupation1,experience_years1,job_*2,experience_years2 / カテゴリー・職種・年が(1)と(2)で同じ場合はエラー |
|
| 修得等をしようとする技能等に係る職歴 職種 (1) | job_occupation1 | tinyint | nullable / 数値のみ / required_with:job_category1,experience_years1,job_*2,experience_years2 |
|
| 修得等をしようとする技能等に係る職歴 経験年数 (1) | experience_years1 | tinyint | nullable / 数値のみ / required_with:job_category1,job_occupation1,job_*2,experience_years2 |
|
| 修得等をしようとする技能等に係る職歴 カテゴリー (2) | job_category2 | tinyint | nullable / 数値のみ / required_with:job_occupation2,experience_years2 |
|
| 修得等をしようとする技能等に係る職歴 職種 (2) | job_occupation2 | tinyint | nullable / 数値のみ / required_with:job_category2,experience_years2 |
|
| 修得等をしようとする技能等に係る職歴 経験年数 (2) | experience_years2 | tinyint | nullable / 数値のみ / required_with:job_category2,job_occupation2 |
|
| 母国語以外の語学力 日本語 | japanese | varchar | required_doc / string / maxlength:50 | |
| 母国語以外の語学力 英語 | english | varchar | required_doc / string / maxlength:50 | |
| 母国語以外の語学力 その他 | other_language | varchar | required_doc / string / maxlength:50 | |
| 訪日経験 有無 | visit_experience | tinyint | required / enum : IsOrIsntの値か? |
|
| 訪日期間 開始 | visit_from | date | nullable / 「訪日経験:有」時必須 / 日付形式:Y/m/d / 訪日期間 終了より前の日付 |
|
| 訪日期間 終了 | visit_until | date | nullable / 「訪日経験:有」時必須 / 日付形式:Y/m/d / 訪日期間 開始より後の日付 |
|
| 外国人建設・造船就労者受入事業で就労(有無) | visit_experience_check1 | boolean | required / enum : IsOrIsntの値か? / 第2号技能実習終了後の帰国期間 開始・終了、建設・造船就労終了後の帰国期間 開始・終了が入力されていない場合はエラー |
|
| 第2号技能実習終了後の帰国期間 開始 | no2_return_from | date | nullable / 日付形式:Y/m/d / 第2号技能実習終了後の帰国期間 終了より前の日付 |
|
| 第2号技能実習終了後の帰国期間 終了 | no2_return_until | date | nullable / 日付形式:Y/m/d / 本日より前の日付 |
|
| 建設・造船就労終了後の帰国期間 開始 | construction_return_from | date | nullable / 日付形式:Y/m/d / 建設・造船就労終了後の帰国期間 終了より前の日付 |
|
| 建設・造船就労終了後の帰国期間 終了 | construction_return_until | date | nullable / 日付形式:Y/m/d / 本日より前の日付 |
|
| EPA に基づく看護・介護候補事業で就労(有無) | visit_experience_check2 | boolean | required / enum : IsOrIsntの値か? |
|
| 活動終了後の帰国期間 開始 | activity_return_from | date | nullable / 「EPA に基づく看護・介護候補事業で就労(有無):有」時必須 / 日付形式:Y/m/d |
|
| 活動終了後の帰国期間 終了 | activity_return_until | date | nullable / 「EPA に基づく看護・介護候補事業で就労(有無):有」時必須 / 日付形式:Y/m/d |
|
| 技能実習生経験 有無 | trainee_experience | tinyint | required / enum : IsOrIsntの値か? |
|
| 実習期間 開始 | training_from | date | nullable / 「技能実習生経験 有無:有」時必須 / 日付形式:Y/m/d |
|
| 実習期間 終了 | training_until | date | nullable / 「技能実習生経験 有無:有」時必須 / 日付形式:Y/m/d |
|
| 技能実習経験及びその区分 | trainee_class_experience | tinyint | nullable / 「技能実習生経験 有無:有」時必須 / enum : TraineeClassの値か? |
|
| 技能実習生経験 区分 | trainee_class | tinyint | nullable / 実習ステータスが「実習中」時必須 / enum : TraineeClassの値か? |
|
| 在留資格不交付の有無 | non_granted | tinyint | required / enum : IsOrIsntの値か? |
|
| 在留資格不交付の理由 | non_granted_reason | varchar(100) | nullable / 「在留資格不交付の有無:有」時必須 / string / maxlength:100 | |
| 職務内容や責任の程度 | duties | text | required_doc / string / maxlength:100 | |
| その他 | remarks | text | nullable / string |
{warning} 学歴は最大3つまで、職歴は最大5つまで登録可。
CSVの仕様上学歴は最大3学歴まで、職歴は最大5職歴までを1行で入力します。
作成日時、更新日時、削除日時は自動で更新するためCSVファイルに入力する必要はありません。
traineesテーブルとはレコード数1対1で作成します。
{danger} 後々CSVの列の並び順変更要望あるかもしれないので下記一覧の並び順は順不同です。
| 論理名 | 物理名 | フィールド名 | 型 | バリデーション | 備考 |
|---|---|---|---|---|---|
| 学歴:期間 開始_1 | education_backgrounds | education_period_from1 | json | required_doc / 学歴1行目のいずれか入力されている場合必須 / 日付形式:Y/m/d |
|
| 学歴:期間 終了_1 | education_backgrounds | education_period_until1 | json | required_doc / 学歴1行目のいずれか入力されている場合必須 / 日付形式:Y/m/d |
|
| 学歴:学校名_1 | education_backgrounds | education_school_name1 | json | required_doc / 学歴1行目のいずれか入力されている場合必須 / string / maxlength:100 | |
| 学歴:期間 開始_2 | education_backgrounds | education_period_from2 | json | required_doc / 学歴2行目のいずれか入力されている場合必須 / 日付形式:Y/m/d |
|
| 学歴:期間 終了_2 | education_backgrounds | education_period_until2 | json | required_doc / 学歴2行目のいずれか入力されている場合必須 / 日付形式:Y/m/d |
|
| 学歴:学校名_2 | education_backgrounds | education_school_name2 | json | required_doc / 学歴2行目のいずれか入力されている場合必須 / string / maxlength:100 | |
| 学歴:期間 開始_3 | education_backgrounds | education_period_from3 | json | required_doc / 学歴3行目のいずれか入力されている場合必須 / 日付形式:Y/m/d |
|
| 学歴:期間 終了_3 | education_backgrounds | education_period_until3 | json | required_doc / 学歴3行目のいずれか入力されている場合必須 / 日付形式:Y/m/d |
|
| 学歴:学校名_3 | education_backgrounds | education_school_name3 | json | required_doc / 学歴3行目のいずれか入力されている場合必須 / string / maxlength:100 | |
| 職歴:期間 開始_1 | employment_histories | employment_period_from1 | json | required_doc / 職歴1行目のいずれか入力されている場合必須 / 日付形式:Y/m/d |
|
| 職歴:期間 終了_1 | employment_histories | employment_period_until1 | json | required_doc / 職歴1行目のいずれか入力されている場合必須 / 日付形式:Y/m/d |
|
| 職歴:就職先名_1 | employment_histories | employment_company_name1 | json | required_doc / 職歴1行目のいずれか入力されている場合必須 / 日付形式:Y/m/d |
|
| 職歴:就職先名(職歴)_1 | employment_histories | employment_employment_history1 | json | required_doc / 職歴1行目のいずれか入力されている場合必須 / string / maxlength:50 | |
| 職歴:期間 開始_2 | employment_histories | employment_period_from2 | json | required_doc / 職歴2行目のいずれか入力されている場合必須 / 日付形式:Y/m/d |
|
| 職歴:期間 終了_2 | employment_histories | employment_period_until2 | json | required_doc / 職歴2行目のいずれか入力されている場合必須 / 日付形式:Y/m/d |
|
| 職歴:就職先名_2 | employment_histories | employment_company_name2 | json | required_doc / 職歴2行目のいずれか入力されている場合必須 / 日付形式:Y/m/d |
|
| 職歴:就職先名(職歴)_2 | employment_histories | employment_employment_history2 | json | required_doc / 職歴2行目のいずれか入力されている場合必須 / string / maxlength:50 | |
| 職歴:期間 開始_3 | employment_histories | employment_period_from3 | json | required_doc / 職歴3行目のいずれか入力されている場合必須 / 日付形式:Y/m/d |
|
| 職歴:期間 終了_3 | employment_histories | employment_period_until3 | json | required_doc / 職歴3行目のいずれか入力されている場合必須 / 日付形式:Y/m/d |
|
| 職歴:就職先名_3 | employment_histories | employment_company_name3 | json | required_doc / 職歴3行目のいずれか入力されている場合必須 / 日付形式:Y/m/d |
|
| 職歴:就職先名(職歴)_3 | employment_histories | employment_employment_history3 | json | required_doc / 職歴3行目のいずれか入力されている場合必須 / string / maxlength:50 | |
| 職歴:期間 開始_4 | employment_histories | employment_period_from4 | json | required_doc / 職歴4行目のいずれか入力されている場合必須 / 日付形式:Y/m/d |
|
| 職歴:期間 終了_4 | employment_histories | employment_period_until4 | json | required_doc / 職歴4行目のいずれか入力されている場合必須 / 日付形式:Y/m/d |
|
| 職歴:就職先名_4 | employment_histories | employment_company_name4 | json | required_doc / 職歴4行目のいずれか入力されている場合必須 / 日付形式:Y/m/d |
|
| 職歴:就職先名(職歴)_4 | employment_histories | employment_employment_history4 | json | required_doc / 職歴4行目のいずれか入力されている場合必須 / string / maxlength:50 | |
| 職歴:期間 開始_5 | employment_histories | employment_period_from5 | json | required_doc / 職歴5行目のいずれか入力されている場合必須 / 日付形式:Y/m/d |
|
| 職歴:期間 終了_5 | employment_histories | employment_period_until5 | json | required_doc / 職歴5行目のいずれか入力されている場合必須 / 日付形式:Y/m/d |
|
| 職歴:就職先名_5 | employment_histories | employment_company_name5 | json | required_doc / 職歴5行目のいずれか入力されている場合必須 / 日付形式:Y/m/d |
|
| 職歴:就職先名(職歴)_5 | employment_histories | employment_employment_history5 | json | required_doc / 職歴5行目のいずれか入力されている場合必須 / string / maxlength:50 |
{warning} IDはNULLかどうかで、新規登録or更新の判別を行います。 新規、編集にかかわらず監理団体の変更はできません。 監理団体ID(organization_id)は、sessionデータから取得するので、インポートするCSVには記述不要です。 作成日時、更新日時、削除日時は自動で登録するためインポートするCSVには記述不要です。
{danger} 後々CSVの列の並び順変更要望あるかもしれないので下記一覧の並び順は順不同です。
| 論理名 | 物理名(フィールド名) | 型 | バリデーション | 備考 |
|---|---|---|---|---|
| ID | id | integer(10) | nullable / (※)ID存在チェック | nullの場合は新規登録、存在するIDの場合はそのレコードは更新、存在しないIDの場合はエラーとします。 |
| 送出国 | country | tinyint(4) | required / enum:CountryのIDか |
|
| 送出機関名 | name | varchar(100) | required / string / maxlength:100 | |
| 略称 | abbreviated_name | varchar(100) | required_doc / string / maxlength:100 | |
| 所在地 | address | varchar(255) | required_doc / string / maxlength:255 | |
| 責任者氏名 | supervisor_name | varchar(50) | required_doc / string / maxlength:50 | |
| 責任者役職 | supervisor_rank | varchar(50) | required_doc / string / maxlength:50 | |
| 送出機関番号 | sending_agency_number | char(9) | required_doc / string / size:9 | |
| 整理番号 | reference_number | char(4) | required_doc / string / size:4 |
POST値にNULLではない「id」の値が存在するが下記のSQLにて取得できない場合は、下記の理由により不正な値としてエラーにします。
select *
from sending_agencies
where id = {POST値の'id'}
and organization_id = {ログインsession内の'organization_id'}
and deleted_at is null