ken_nogi/Pleasanter/営業積算システム/docs/新・営業積算システム仕様書_分割/043_新・営業積算システム仕様書_別記資料スクリプト(13/28).md
Kenichiro NOGI ce58cb4be4 初回コミット: dev配下(NodeSrv/Pleasanter等)をGitea管理下に統合
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>
2026-09-04 15:37:06 +09:00

4.5 KiB
Raw Blame History

別記資料 スクリプトScripts全文 1328

// ...(前ファイルからの続き)
    let includeList = ['Results_Class007', 'Results_Class031', 'Results_Class032', 'Results_Class033', 'Results_Class034', 'Results_Description031', 'Results_Class045', 'Results_Class050', 'Results_Class038', 'Results_Class039', 'Results_Class040'];
    let checkFlug = false;
    $.each($p.data.MainForm, function (index, val) {
        if (index.startsWith('Results')) {
            if (includeList.includes(index)) {
                // 処理内容
                checkFlug = true;
            }
        }
    });

    if (checkFlug) {
        let type = $('#Results_Class007').val();
        let mergeStr = [];   //マージする文字列を格納する配列

        if (type == 'マトリックス') {
            mergeStr.push($('#Results_Class038').val());   //Class038(積算Ver.)の値を配列に格納
            mergeStr.push($('#Results_Class039').val());   //Class039(マトリックスサイズ)の値を配列に格納
            mergeStr.push($('#Results_Class040').val());   //Class040(nexthouseシリーズ)の値を配列に格納
        } else {
            mergeStr.push($('#Results_Class031').val());         //Class031(メーカー)の値を配列に格納
            mergeStr.push($('#Results_Class032').val());         //Class032(商品名)の値を配列に格納
            mergeStr.push($('#Results_Class033').val());         //Class033(品番)の値を配列に格納
            mergeStr.push($('#Results_Class034').val());         //Class034(施工範囲・箇所)の値を配列に格納
            mergeStr.push($('#Results_Description031').val());   //Description031(依頼内容補足)の値を配列に格納
            mergeStr.push($('#Results_Class045').val());         //Class045(標準仕様)の値を配列に格納
            mergeStr.push($('#Results_Class050').val());         //Class050(前回の管理番号)の値を配列に格納
        }

        //空欄(未入力)の項目を除外する
        mergeStr = mergeStr.filter(function (val) {
            return val && val.trim() !== '';
        });

        //改行で結合して、DescriptionCに格納
        $p.set($('#Results_DescriptionC'), mergeStr.join('\n'));
    }
}


//----------------------------------------------------------------------
//遅延連絡ログ
//Class086遅延理由、Class087遅延連絡者
//Date084遅延連絡日、Date085返信予定日
//Description081遅延連絡内容
$p.saveReasonLog = function () {
    //対象項目の変更があった場合のみログを保存する
    let includeList = ['Results_Class086', 'Results_Class087', 'Results_Date084', 'Results_Date085', 'Results_Description081'];
    let checkFlug = false;
    $.each($p.data.MainForm, function (index, val) {
        if (index.startsWith('Results')) {
            if (includeList.includes(index)) {
                // 処理内容
                checkFlug = true;
            }
        }
    });

    if (checkFlug) {
        let logStr = [];
        let reasonText = $('#Results_Class086 option:selected').text();   //遅延理由の表示テキストを取得
        logStr.push('遅延理由:' + reasonText);                            //Class086の表示文字列を配列に格納
        logStr.push('遅延連絡者:' + resolveUserName($('#Results_Class087').val()));   //Class087の値を氏名に解決して配列に格納
        logStr.push('遅延連絡日:' + $('#Results_Date084').val());         //Date084の値を配列に格納
        logStr.push('返信予定日:' + $('#Results_Date085').val());         //Date085の値を配列に格納
        logStr.push('遅延連絡内容:' + '\n' + $('#Results_Description081').val());   //Description081の値を配列に格納

        let orgLog = $('#Results_Description083').val();   //Description083の既存の値を取得
        //新しいログを先頭(上)にして、既存のログがある場合はその下に結合。ない場合は新しいログのみ
        let saveLog = orgLog ? logStr.join('\n') + '\n----------------------\n' + orgLog : logStr.join('\n');
        $p.set($('#Results_Description083'), saveLog);   //Description083に保存
    }

}

//算出対応ログ
$p.saveCalculateLog = function () {
    //対象項目の変更があった場合のみログを保存する
    let includeList = ['Results_Class101', 'Results_Class102', 'Results_Date103', 'Results_Class103', 'Results_Description091', 'Results_Description092'];
    let checkFlug = false;
// ...(次ファイルへ続く)