GitHub(nextgroup2706/ken_nogi)は今後使わず自社Gitea運用に切替え。 NodeSrvは旧リポジトリの履歴を破棄しファイルのみ統合(Dokploy用サービスアカウントは 別途mygit-admin/NodeSrv.gitに履歴あり)。notepmエクスポート(12GB)とPleasanter インストーラzip(208MB)はサイズが大きいため.gitignoreで除外。 Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
4.7 KiB
4.7 KiB
別記資料 スクリプト(Scripts)全文 (10/28)
// ...(前ファイルからの続き)
let attach = value.dataset.name;
attachmentComments(attach);
attachFileCheckbox(attach);
})
//----------------------------------------------------------------------
//Results_ClassG(現在の進捗)変更時に項目の表示/非表示を切替
//ClassGは「新規依頼」プロセス実行後に読取専用化されるため、控え項目ClassT(現在の進捗(控え))へ常に同期しておき、
//表示切替の判定はClassTを参照する(読取専用化後は$('#Results_ClassG').val()が空になるため)
$('input[name="Results_ClassG"]').on('change', function () {
$p.toggleClassGFields($(this).val());
$p.set($('#Results_ClassT'), $(this).val());
});
$p.toggleClassGFields($('#Results_ClassT').val());
//----------------------------------------------------------------------
//Results_Class007(問合せ種別)変更時にマトリックス以外/マトリックスの入力欄表示を切替
$('input[name="Results_Class007"]').on('change', function () {
$p.ex.toggleInquiryTypeFields($(this).val());
});
$p.ex.toggleInquiryTypeFields($('#Results_Class007').val());
//----------------------------------------------------------------------
//Results_Class055(不備・追加)欄は項目削除に伴い不要化(2026-08-01コメントアウト)
/*
$('input[name="Results_Class055"]').on('change', function () {
$p.toggleClass055Fields($(this).val());
});
$p.toggleClass055Fields($('#Results_Class055').val());
*/
//アップ希望日チェックイベント登録
$p.on('change', 'DateA', function () {
$p.clearMessage();
$p.upDateCheck();
});
//----------------------------------------------------------------------
//Status(状況)とClass062(状況)の値を相互に同期
$('#Results_Status').on('change', function () {
$p.ex.syncStatusAndClass062('Status');
});
$('#Results_Class062').on('change', function () {
$p.ex.syncStatusAndClass062('Class062');
});
//code-readonly2(読取り専用)が設定されている全フィールドをTab移動対象から除外する
$p.applyReadonlyTabindex();
}
//----------------------------------------------------------------------
//code-readonly2(読取り専用)が設定されている全フィールドをTab移動対象から除外する。
//pointer-events:noneはマウス操作のみ無効化し、Tabキーでのフォーカス移動・キーボード操作での
//選択変更は防げないため、tabindex="-1"を併用する(①物件基本情報サイトと同じ方式)。
//StatusControls「依頼ロック」によるReadOnly化(ExtendedFieldCssとは別のPleasanter標準機構)は
//DOM上の表現が未確認のため対象外。ExtendedFieldCss: "code-readonly2"の静的設定項目のみ対応。
$p.applyReadonlyTabindex = function () {
$('select, input, textarea').each(function () {
let $el = $(this);
if ($el.closest('.code-readonly2').length) {
$el.attr('tabindex', '-1');
} else if ($el.attr('tabindex') === '-1') {
$el.removeAttr('tabindex');
}
});
}
//Status変更時はClass062へ、Class062変更時はStatusへ値をコピーする(無限ループ防止のため値が異なる場合のみ更新)
$p.ex.syncStatusAndClass062 = function (changedField) {
let statusVal = $('#Results_Status').val();
let class062Val = $('#Results_Class062').val();
if (changedField === 'Status') {
if (class062Val !== statusVal) {
$p.set($('#Results_Class062'), statusVal);
}
} else {
if (statusVal !== class062Val) {
$p.set($('#Results_Status'), class062Val);
}
}
}
$p.setSubNumber = function () {
// サブ番号の設定ロジック
let classB = $('#Results_ClassB').val();
let classX = $('#Results_ClassX').val();
let subNumber = classX.split('-')[1]; // 管理番号を「-」で分割して、子番を取得
if (subNumber && subNumber !== classB) {
// サブ番号を設定
$p.set($('#Results_ClassB'), subNumber);
}
};
//Results_ClassG(現在の進捗)変更時に項目の表示/非表示を切替
$p.toggleClassGFields = function (value) {
if (value == '1') {
//表示
$('#Results_ClassHField').show();
$('#Results_ClassIField').show();
$('#Results_DescriptionAField').show();
} else {
//非表示
$('#Results_ClassHField').hide();
// ...(次ファイルへ続く)