キープ処理のステータスコード
キープ処理のステータスコード
キープ処理におけるレスポンスの内容について解説します。
キープ処理のレスポンスは、JSON形式で返却します。
ステータスコードを判断条件として、エラー内容の出力やアラートの変更、キープボタン表示などの処理をJSで制御してください。
"result" :
{
"status" : {実行結果の真偽値},
"code" : {実行結果の番号}
}
);
- status:成功(TRUE)、失敗(FALSE)の二択
- code:下記ステータスコード表の実行結果
コード | ステータス | 内容 |
---|---|---|
1 | 成功 | 切替(削除):レコードが存在するので削除 |
2 | 成功 | 切替(登録):レコードが存在しないので登録 |
10 | 成功 | 登録:レコードが存在しないので登録 |
11 | 成功 | 登録:レコードが存在するので登録しない |
12 | 成功 | 削除:レコードが存在しないので削除 |
13 | 成功 | 削除:レコードが存在しないので削除しない |
20 | 成功 | 更新:レコードがある場合は削除して更新(上書き) |
21 | 成功 | 更新:レコードが存在しないので登録 |
100 | 失敗 | パラメータ不備:キープシートが渡されなかった 対処方法:操作対象のキープシートのシステムIDが正しく渡されているか確認する |
101 | 失敗 | パラメータ不備:targetが渡されなかった 対処方法:キープ対象のシステムIDがtarget引数に渡されているか確認する |
102 | 失敗 | パラメータ不備:「登録」「削除」のパラメータが渡されていなかった 対処方法:正しい引数(fixed_add、fixed_del)が指定されているか見直す |
200 | 失敗 | 内容不整合:キープシートが見つからない 対処方法:指定したキープシートが存在するか確認する |
201 | 失敗 | 内容不整合:キープ対象が見つからない 対処方法:キープ対象が存在するか確認する |
202 | 失敗 | 内容不整合:キープ対象が指定のキープシートと繋がりがない 対処方法:キープ対象がキープシートの対象シートのレコードであるか確認する |
203 | 失敗 | 内容不整合:動作設定のいずれかのパラメータが予期せぬ値 対処方法:動作設定のパラメータを確認する |
204 | 失敗 | 内容不整合:「登録」「削除」のパラメータが予期せぬ値 対処方法:正しい引数(fixed_add、fixed_del)が指定されているか見直す |
900 | 失敗 | アクセス制限:切替(削除)でレコードを削除しようとしたが、 操作権限者に削除が許可されていない 対処方法:アクセス権限を確認する |
901 | 失敗 | アクセス制限:切替(登録)でレコードを登録しようとしたが、 操作権限者に登録が許可されていない 対処方法:設定 >アクセス権限を確認する |
902 | 失敗 | アクセス制限:「登録」でレコードを登録しようとしたが、 操作権限者に登録が許可されていない 対処方法:設定 >アクセス権限を確認する |
903 | 失敗 | アクセス制限:「削除」でレコードを削除しようとしたが、 操作権限者に削除が許可されていない 対処方法:設定 >アクセス権限を確認する |
904 | 失敗 | アクセス制限:「更新」で登録を行おうとしたが、 操作権限者に登録が許可されていない 対処方法:設定 >アクセス権限を確認する |
ステータスコードのコンテンツ利用例
keepモジュールを利用した各種コンテンツ作成例は、不動産・住宅情報サイト(スケッチ)のデモサイト でご確認いただけます。
不動産・住宅情報サイトから、ステータスコードを利用した一例を紹介します。
アイテム一覧の「お気に入りボタン」をクリックすることで表示が変わるイベントを作成します。
登録・削除が一つのボタン(toggle)を使用し、対象のキープレコードが記録されていなければ記録し、記録されていれば削除。その挙動によってボタンの表示を変更します。
キープJSコンテンツ:お気に入り用キープjs
$(function()
{
//init
$(".keep_btn_rent").each(function(){
viewButton($(this));
});
$(".keep_btn_rent").on("click", function ()
{
var target_id = $(this).attr("data-id");
$.ajax({
url: "[keep_url:toggle]" + target_id,
type: "GET",
})
.done(function(data)
{
var ret = JSON.parse(data);
switch(ret.result.code)
{
case 1://削除
$(".keep_btn_rent[data-id='"+target_id+"']").attr("data-keep_check", "false");
break;
case 2://追加
$(".keep_btn_rent[data-id='"+target_id+"']").attr("data-keep_check", "true");
break;
default://なんらかの問題発生
break;
}
viewButton($(".keep_btn_rent[data-id='"+target_id+"']"));
});
return false;
});
function viewButton(elem)
{
var keep_state = elem.attr("data-keep_check");
elem.find("a").html(elem.find("a").attr("data-keep_text_" + keep_state));
}
});
アイテム一覧コンテンツ
<head>~</head>内にお気に入り用キープJSへのリンクを記載します。
<script src="[keep_js_rent_keep_js_url]"></script>
該当ボタンに記載します。
<p class="btn btn_bookmark keep_btn_rent" data-keep_check="[keep_kgo4bmpt0m58_state]" data-id="[item_id]">
<a data-keep_text_true="お気に入り解除" data-keep_text_false="お気に入り追加" href="#"></a></p>