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.9 KiB
4.9 KiB
別記資料 スクリプト(Scripts)全文 (14/28)
// ...(前ファイルからの続き)
$.each($p.data.MainForm, function (index, val) {
if (index.startsWith('Results')) {
if (includeList.includes(index)) {
// 処理内容
checkFlug = true;
}
}
});
if (checkFlug) {
//Class101算出者、Class102チェック者、Date103返信日、Class103返信者
//Description091見積回答、Description092別途費用・伝達事項"
let logStr = [];
logStr.push('算出者:' + resolveUserName($('#Results_Class101').val())); //Class101の値を氏名に解決して配列に格納
logStr.push('チェック者:' + resolveUserName($('#Results_Class102').val())); //Class102の値を氏名に解決して配列に格納
logStr.push('返信日:' + $('#Results_Date103').val()); //Date103の値を配列に格納
logStr.push('返信者:' + resolveUserName($('#Results_Class103').val())); //Class103の値を氏名に解決して配列に格納
//ラベルと内容の間に改行を入れることで、ラベルが独立した行になり、内容は次の行から表示される
logStr.push('見積回答:' + '\n' + $('#Results_Description091').val()); //Description091の値を配列に格納
logStr.push('別途費用・伝達事項:' + '\n' + $('#Results_Description092').val()); //Description092の値を配列に格納
let orgLog = $('#Results_Description101').val(); //Description101の既存の値を取得
//既存のログがある場合はそれを先頭にして新しいログを結合、ない場合は新しいログのみを結合
let saveLog = orgLog ? orgLog + '\n----------------------\n' + logStr.join('\n') : logStr.join('\n');
$p.set($('#Results_Description101'), saveLog); //Description101に保存
}
}
//見積回答(Description091)・別途費用・伝達事項(Description092)をDescription093へ統合し、
//Description093の内容をDescription061(見積結果)へ転記する
$p.mergeEstimateResult = function () {
//対象項目の変更があった場合のみ処理する
let includeList = ['Results_Description091', 'Results_Description092'];
let checkFlug = false;
$.each($p.data.MainForm, function (index, val) {
if (index.startsWith('Results')) {
if (includeList.includes(index)) {
checkFlug = true;
}
}
});
if (checkFlug) {
//091・092を改行で結合してDescription093へ格納(内容に変更が無ければ上書きしない)
let mergeStr = $('#Results_Description091').val() + '\n' + $('#Results_Description092').val();
if ($('#Results_Description093').val() !== mergeStr) {
$p.set($('#Results_Description093'), mergeStr);
}
//Description093をDescription061へ転記(内容に変更が無ければ上書きしない)
if ($('#Results_Description061').val() !== mergeStr) {
$p.set($('#Results_Description061'), mergeStr);
}
}
}
//----------------------------------------------------------------------
//ClassZ(①物件基本情報からのリンク元ID)が新規作成時に空欄の場合、新規作成をブロックする
//(①物件基本情報のリンクを経由せず直接このサイトで新規作成しようとした異常系を検知)
$p.ex.checkClassZRequired = function () {
if ($p.action() == 'new' && !$('#Results_ClassZ').val()) {
$p.ex.setMyMessage('new-status-red', '①物件基本情報から新規依頼を作成してください');
return false;
}
return true;
}
//----------------------------------------------------------------------
//営業積算タブ(_Tab-2)→問い合わせ情報タブ(General)への転記(同一レコード内)
//受付日Date081→Date061、受付者Class081→Class061
//見積依頼日Date082→Date062、見積依頼先Class083→Class063
//見積受信日Date090→Date063、見積種別Class091→Class065
//転記先の値に差異がある場合のみ転記し、差異が無い場合はスキップする
$p.syncSekisanTabToGeneralTab = function () {
let mapping = [
{ from: 'Class081', to: 'Class061', resolveUser: true }, //受付者(Usersマスタ参照のため氏名に解決して転記)
{ from: 'Class083', to: 'Class063' }, //見積依頼先
{ from: 'Date081', to: 'Date061' }, //受付日
{ from: 'Date082', to: 'Date062' }, //見積依頼日
{ from: 'Date090', to: 'Date063' }, //見積受信日
{ from: 'Class091', to: 'Class065' }, //見積種別
];
mapping.forEach(function (item) {
let fromVal = $('#Results_' + item.from).val();
// ...(次ファイルへ続く)