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.5 KiB
4.5 KiB
別記資料 スクリプト(Scripts)全文 (20/28)
// ...(前ファイルからの続き)
if ($('#messageDelete').length) {
$('#messageDelete').remove();
}
let saveData = $('#Results_Description071').val();
if (saveData) {
//メッセージデータの取得
let messageData = JSON.parse(saveData);
let templateHtml =
`<table id="messageTable" class="radius-table">
<tbody>
{{#messageData}}
<tr class="{{type}}">
<td class="shitsugi_type">{{typeStr}} {{num}}</td>
<td class="shitsugi_userName">{{userName}}</td>
<td class="shitsugi_messageTime">{{messageTime}}</td>
</tr>
<tr class="{{type}}">
<td colspan="2" class="shitsugi_messageBody">
<pre class="shitsugi_preWrap">{{{messageBody}}}</pre>
</td>
<td class="shitsugi_deleteCheck"><input type="checkbox" name="messageDeleteCheck" value="{{messageID}}"></input></td>
</tr>
{{/messageData}}
</tbody>
</table>`;
let template = Hogan.compile(templateHtml);
let outputHtml = template.render({
"messageData": messageData
});
//質疑内容入力欄の直上にメッセージ履歴テーブルを表示する
//(本サイトにはSectionFields番号を直接指定できる根拠がないため、既知の項目=Description075Fieldを起点に挿入)
setTimeout(function () {
$('#SectionFields8').append(outputHtml);
}, 300);
}
//対応するプロセスボタン「質疑回答削除」が実在する場合のみ削除ボタンを表示(Depts・View条件にそのまま追従)
if ($p.ex.processButtonExists('質疑回答削除')) {
let button3 = document.createElement('button');
button3.type = 'button';
button3.id = 'messageDelete';
button3.innerHTML = '質疑回答削除';
button3.setAttribute('onclick', "$p.ex.clickProcessByName('質疑回答削除')");
button3.style.margin = '5px';
button3.style.float = 'right';
button3.style.fontSize = '1.3em';
setTimeout(function () {
$('#Results_Description075Field').before(button3);
$('#messageDelete').button({
icon: 'ui-icon-document'
});
}, 300);
}
}
}
//質疑・回答送信ボタン作成
$p.ex.messageSaveButton = function () {
//対応するプロセスボタン「質疑送信」が実在する場合のみ表示(Depts・View条件による表示制御にそのまま追従)
if ($p.ex.processButtonExists('質疑送信') && !$('#saveQuestion').length) {
let div1 = document.createElement('div');
div1.style.textAlign = 'right';
let button1 = document.createElement('button');
button1.type = 'button';
button1.id = 'saveQuestion';
button1.innerHTML = '質疑送信';
button1.setAttribute('onclick', "$p.ex.clickProcessByName('質疑送信')");
button1.style.margin = '5px';
button1.style.fontSize = '1.3em';
div1.append(button1);
$('#Results_Attachments071Field').after(div1);
$('#saveQuestion').button({
icon: 'ui-icon-document'
});
} else {
//営業積算課以外は質疑入力欄・添付欄を非表示
$('#Results_Description075Field').hide();
$('#Results_Attachments071Field').hide();
}
//対応するプロセスボタン「積算対応中へ」が実在する場合のみ表示(Depts・View条件による表示制御にそのまま追従)
//(ボタンのラベル「営業積算確認」は維持。実行先プロセスは新プロセス仕様で「積算対応中へ」(Id:6)に統合されたため、
// clickProcessByNameの対象名のみ変更。confirmAnswerMessage()は04_プロセス処理スクリプト.jsのcase'積算対応中へ'内で呼ぶ)
if ($p.ex.processButtonExists('積算対応中へ') && !$('#confirmAnswer').length) {
let div4 = document.createElement('div');
div4.style.textAlign = 'right';
let button4 = document.createElement('button');
button4.type = 'button';
button4.id = 'confirmAnswer';
button4.innerHTML = '営業積算確認';
// ...(次ファイルへ続く)