ken_nogi/pleasanter/develop/★MSS/★マスターシート/sites/scripts/2.マスターシート帳票.js
Kenichiro NOGI 7176dc33ec pleasanter
2025-07-10 10:15:35 +09:00

808 lines
46 KiB
JavaScript
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*
@config : next999.json
@filename : ${psFileBasename}
@title : 2.マスターシート帳票
@name :
@siteIds : 189112
@siteTitles : ★マスターシート
@disabled: false
*/
let myData;
let arariData;
function getTemplateRecord(templateName) {
getMyData();
getArariData();
//現在時刻
let now = new Date();
let years = now.getFullYear();
let monthes = (now.getMonth() + 1).toString().padStart(2, '0');
let today = now.getDate().toString().padStart(2, '0');
let youbi = now.getDay();
let hours = now.getHours();
let mins = now.getMinutes();
let secs = now.getSeconds();
let keiyakuCd = myData.ClassHash.ClassA; //myData.ClassHash.ClassA;
let customerName = myData.ClassHash.ClassS; //myData.ClassHash.ClassS;
let guid = templateFiles[templateName];
let fileName = keiyakuCd + '_' + customerName + '■' + templateName + '■' + years + monthes + today + '-' + hours + mins + secs + '.xlsx';
if (templateName === '設計パートナー契約書') {
let err = '';
if (myData.ClassHash.ClassN == 0) {
err = err + '基本情報の設計契約を「あり」に指定してください\n';
}
if (parseFloat(myData.NumHash.Num038) <= 0) {
err = err + '設計契約金を入力してください\n';
}
if (myData.DateHash.Date038 == "1899-12-30T00:00:00") {
err = err + '設計契約金の支払日を入力してください\n';
}
if (err != '') {
err = err + '上記の箇所を修正し、もう一度帳票出力ボタンを押してください';
alert(err);
} else {
createReport(guid, fileName, templateName);
}
} else if (templateName === '粗利益確認書') {
let err = '';
if ($('#Results_Class190').val() == '') {
err = err + '粗利益確認書レコードがありません\n';
}
if (err != '') {
//err = err + '上記の箇所を修正し、もう一度帳票出力ボタンを押してください';
alert(err);
} else {
createReport(guid, fileName, templateName);
}
} else {
createReport(guid, fileName, templateName);
}
}
function createReport(guid, fileName, templateName) {
return customizeReport(guid, templateName)
.then(function (blob) {
if (window.navigator && window.navigator.msSaveOrOpenBlob) {
window.navigator.msSaveOrOpenBlob(blob, fileName);
} else {
var url = window.URL.createObjectURL(blob);
var a = document.createElement('a');
document.body.appendChild(a);
a.href = url;
a.download = fileName;
a.click();
window.URL.revokeObjectURL(url);
document.body.removeChild(a);
}
})
.catch(function (err) {
alert(err.message || err);
throw err;
});
}
//帳票にデータを書き込み
function customizeReport(guid, templateName) {
return getWorkbook(guid).then(function (workbook) {
let data001 = JSON.parse(myData.DescriptionHash.Description001); //契約会社
let data002 = JSON.parse(myData.DescriptionHash.Description002); //施工会社
let data003 = JSON.parse(myData.DescriptionHash.Description003); //契約営業所
let data004 = {
"Title": "未選択",
}
if (myData.DescriptionHash.Description004 != '') {
data004 = JSON.parse(myData.DescriptionHash.Description004); //ブランド
}
let data005 = {
"ClassHash": {
"ClassB": ""
}
}
if (myData.DescriptionHash.Description005 != '') {
data005 = JSON.parse(myData.DescriptionHash.Description005); //シリーズ
}
let dataA = JSON.parse(myData.DescriptionHash.DescriptionA); //支払テーブル
let dataF = JSON.parse(myData.DescriptionHash.DescriptionF); //見積総計
//帳票ごとに書き込む処理を分ける
//共通変数
let customerName = myData.ClassHash.ClassS + ' 様';
let koujimei1 = myData.ClassHash.ClassQ;
let koujimei2 = myData.ClassHash.ClassU;
let shubetsu = myData.ClassHash.Class042;
let koujimei = koujimei1 + ' 様邸' + shubetsu + '工事';
if (koujimei2 != '') {
koujimei = koujimei2 + ' 様邸' + shubetsu + '工事';
}
//if (keiyakuDate) {
// keiyakuDateStr = keiyakuDate.getFullYear() + '年' + (keiyakuDate.getMonth() + 1) + '月' + keiyakuDate.getDate() + '日';
//}
let keiyakuDateStr = '';
if (myData.DateHash.DateD != "1899-12-30T00:00:00") {
let keiyakuDate = new Date(myData.DateHash.DateD);
keiyakuDateStr = keiyakuDate.getFullYear() + '年' + (keiyakuDate.getMonth() + 1) + '月' + keiyakuDate.getDate() + '日';
}
let SkeiyakuDateStr = '';
if (myData.DateHash.DateE != "1899-12-30T00:00:00") {
let SkeiyakuDate = new Date(myData.DateHash.DateE);
SkeiyakuDateStr = SkeiyakuDate.getFullYear() + '年' + (SkeiyakuDate.getMonth() + 1) + '月' + SkeiyakuDate.getDate() + '日';
}
//担当
let eigyo1 = '';
if (myData.ClassHash.ClassG) {
eigyo1 = userList[myData.ClassHash.ClassG].name;
}
let eigyo2 = '';
if (myData.ClassHash.ClassH) {
eigyo2 = userList[myData.ClassHash.ClassH].name;
}
let eigyo12 = '';
if (eigyo1 != '') {
if (eigyo2 != '') {
eigyo12 = eigyo1 + '' + eigyo2;
} else {
eigyo12 = eigyo1;
}
} else {
if (eigyo2 != '') {
eigyo12 = eigyo2;
}
}
let sekkei1 = '';
if (myData.ClassHash.ClassI) {
sekkei1 = userList[myData.ClassHash.ClassI].name;
}
let sekkei2 = '';
if (myData.ClassHash.ClassL) {
sekkei2 = userList[myData.ClassHash.ClassL].name;
}
let kantoku = '';
if (myData.ClassHash.ClassJ) {
kantoku = userList[myData.ClassHash.ClassJ].name;
}
let IC = '';
if (myData.ClassHash.ClassK) {
IC = userList[myData.ClassHash.ClassK].name;
}
switch (templateName) {
//----------------------------------------------------------------------------------------------------
case '画像掲載承諾書':
workbook.sheet('param').cell('C1').value(myData.ClassHash.ClassA);
break;
//----------------------------------------------------------------------------------------------------
case 'A建物工事見積書':
workbook.sheet('param').cell('C2').value(customerName);
workbook.sheet('param').cell('C3').value(koujimei);
workbook.sheet('param').cell('C40').value(keiyakuDateStr);
(myData.NumHash.Num045) ? workbook.sheet('param').cell('C4').value(parseFloat(myData.NumHash.Num045.toString().replaceAll(/[¥,]/g, ''))) : 0;
let dataB = JSON.parse(myData.DescriptionHash.DescriptionB);
$.each(dataB, function (index, value) {
let i = index + 5;
if (index < 15) {
workbook.sheet('param').cell('C' + i).value(value[0]);
workbook.sheet('param').cell('E' + i).value(value[1]);
if (value[2].toString().length > 0) {
workbook.sheet('param').cell('G' + i).value(value[2] == "" ? 0 : parseFloat(value[2].toString().replaceAll(/[¥,]/g, '')));
}
}
});
break;
//----------------------------------------------------------------------------------------------------
case 'B建物工事見積書':
workbook.sheet('param').cell('C2').value(customerName);
workbook.sheet('param').cell('C3').value(koujimei);
workbook.sheet('param').cell('C40').value(keiyakuDateStr);
(myData.NumHash.Num046) ? workbook.sheet('param').cell('C4').value(parseFloat(myData.NumHash.Num046.toString().replaceAll(/[¥,]/g, ''))) : 0;
let dataC = JSON.parse(myData.DescriptionHash.DescriptionC);
$.each(dataC, function (index, value) {
let i = index + 5;
if (index < 20) {
workbook.sheet('param').cell('C' + i).value(value[0]);
workbook.sheet('param').cell('E' + i).value(value[1]);
workbook.sheet('param').cell('G' + i).value(value[2]);
if (value[3].toString().length > 0) {
workbook.sheet('param').cell('I' + i).value(value[3] == "" ? 0 : parseFloat(value[3].toString().replaceAll(/[¥,]/g, '')));
workbook.sheet('param').cell('K' + i).value(value[4] == "" ? "" : value[4]);
workbook.sheet('param').cell('M' + i).value(value[5] == "" ? 0 : parseFloat(value[5].toString().replaceAll(/[¥,]/g, '')));
}
}
});
break;
//----------------------------------------------------------------------------------------------------
case 'C付帯工事見積書':
workbook.sheet('param').cell('C2').value(customerName);
workbook.sheet('param').cell('C3').value(koujimei);
workbook.sheet('param').cell('C40').value(keiyakuDateStr);
(myData.NumHash.Num047) ? workbook.sheet('param').cell('C4').value(parseFloat(myData.NumHash.Num047.toString().replaceAll(/[¥,]/g, ''))) : 0;
let dataD = JSON.parse(myData.DescriptionHash.DescriptionD);
$.each(dataD, function (index, value) {
let i = index + 5;
workbook.sheet('param').cell('C' + i).value(value[1]);
workbook.sheet('param').cell('E' + i).value(value[2] == "" ? 0 : parseFloat(value[2].toString().replaceAll(/[¥,]/g, '')));
workbook.sheet('param').cell('G' + i).value(value[3]);
});
break;
//----------------------------------------------------------------------------------------------------
//1.設計パートナー契約書
case '設計パートナー契約書':
workbook.sheet('param').cell('C2').value(customerName);
workbook.sheet('param').cell('C3').value(myData.ClassHash.ClassA);
workbook.sheet('param').cell('C4').value(myData.ClassHash.ClassB);
workbook.sheet('param').cell('C5').value(eigyo12);
workbook.sheet('param').cell('C6').value(data004.Title);
workbook.sheet('param').cell('C7').value(sekkei1);
workbook.sheet('param').cell('C8').value(koujimei);
workbook.sheet('param').cell('C9').value(myData.ClassHash.Class034 + '(' + myData.ClassHash.Class036 + ')');
workbook.sheet('param').cell('C10').value(data005.ClassHash.ClassB);
(myData.NumHash.Num011) ? workbook.sheet('param').cell('C11').value(parseFloat(myData.NumHash.Num011.toString().replaceAll(/[¥,]/g, ''))) : 0;
(myData.NumHash.Num012) ? workbook.sheet('param').cell('C12').value(parseFloat(myData.NumHash.Num012.toString().replaceAll(/[¥,]/g, ''))) : 0;
(myData.NumHash.Num013) ? workbook.sheet('param').cell('C13').value(parseFloat(myData.NumHash.Num013.toString().replaceAll(/[¥,]/g, ''))) : 0;
(myData.NumHash.Num014) ? workbook.sheet('param').cell('C14').value(parseFloat(myData.NumHash.Num014.toString().replaceAll(/[¥,]/g, ''))) : 0;
(myData.NumHash.Num015) ? workbook.sheet('param').cell('C15').value(parseFloat(myData.NumHash.Num015.toString().replaceAll(/[¥,]/g, ''))) : 0;
(myData.NumHash.Num016) ? workbook.sheet('param').cell('C16').value(parseFloat(myData.NumHash.Num016.toString().replaceAll(/[¥,]/g, ''))) : 0;
(myData.NumHash.Num019) ? workbook.sheet('param').cell('C27').value(parseFloat(myData.NumHash.Num019.toString().replaceAll(/[¥,]/g, ''))) : 0;
workbook.sheet('param').cell('C17').value(myData.ClassHash.Class031);
(myData.NumHash.Num038) ? workbook.sheet('param').cell('C18').value(parseFloat(myData.NumHash.Num038.toString().replaceAll(/[¥,]/g, ''))) : 0;
let date038 = '';
if (myData.DateHash.Date038 != "1899-12-30T00:00:00") {
let date038a = new Date(myData.DateHash.Date038);
date038 = date038a.getFullYear() + '年' + (date038a.getMonth() + 1) + '月' + date038a.getDate() + '日';
}
workbook.sheet('param').cell('C19').value(date038);
workbook.sheet('param').cell('C20').value(data001.ClassHash.ClassB);
workbook.sheet('param').cell('C21').value(data001.ClassHash.ClassC);
workbook.sheet('param').cell('C22').value(data001.ClassHash.ClassA);
workbook.sheet('param').cell('C23').value(data001.ClassHash.ClassG);
workbook.sheet('param').cell('C24').value(myData.ClassHash.ClassX);
workbook.sheet('param').cell('C25').value(data001.ClassHash.ClassA);
break;
//----------------------------------------------------------------------------------------------------
//2.建築工事請負契約書
case '建築工事請負契約書':
workbook.sheet('param').cell('C2').value(customerName);
workbook.sheet('param').cell('C3').value(myData.ClassHash.ClassA);
workbook.sheet('param').cell('C4').value(myData.ClassHash.ClassB);
workbook.sheet('param').cell('C5').value(data003.Title);
//担当営業
workbook.sheet('param').cell('C6').value(eigyo12);
workbook.sheet('param').cell('C7').value(koujimei);
workbook.sheet('param').cell('C8').value(myData.ClassHash.Class034 + '(' + myData.ClassHash.Class036 + ')');
workbook.sheet('param').cell('C9').value(data004.Title + ' ' + data005.ClassHash.ClassB);
(myData.NumHash.Num011) ? workbook.sheet('param').cell('C10').value(parseFloat(myData.NumHash.Num011.toString().replaceAll(/[¥,]/g, ''))) : 0;
(myData.NumHash.Num012) ? workbook.sheet('param').cell('C11').value(parseFloat(myData.NumHash.Num012.toString().replaceAll(/[¥,]/g, ''))) : 0;
(myData.NumHash.Num013) ? workbook.sheet('param').cell('C12').value(parseFloat(myData.NumHash.Num013.toString().replaceAll(/[¥,]/g, ''))) : 0;
(myData.NumHash.Num014) ? workbook.sheet('param').cell('C13').value(parseFloat(myData.NumHash.Num014.toString().replaceAll(/[¥,]/g, ''))) : 0;
(myData.NumHash.Num015) ? workbook.sheet('param').cell('C14').value(parseFloat(myData.NumHash.Num015.toString().replaceAll(/[¥,]/g, ''))) : 0;
(myData.NumHash.Num016) ? workbook.sheet('param').cell('C15').value(parseFloat(myData.NumHash.Num016.toString().replaceAll(/[¥,]/g, ''))) : 0;
(myData.NumHash.Num019) ? workbook.sheet('param').cell('C27').value(parseFloat(myData.NumHash.Num019.toString().replaceAll(/[¥,]/g, ''))) : 0;
workbook.sheet('param').cell('C16').value(myData.ClassHash.Class031);
let dateH = ''; //着工予定日
if (myData.DateHash.DateH != "1899-12-30T00:00:00") {
let dateH0 = new Date(myData.DateHash.DateH);
dateH = dateH0.getFullYear() + '年' + (dateH0.getMonth() + 1) + '月' + dateH0.getDate() + '日';
}
let dateL = ''; //完成予定日
if (myData.DateHash.DateL != "1899-12-30T00:00:00") {
let dateL0 = new Date(myData.DateHash.DateL);
dateL = dateL0.getFullYear() + '年' + (dateL0.getMonth() + 1) + '月' + dateL0.getDate() + '日';
}
let dateM = ''; //追加変更期限
if (myData.DateHash.DateM != "1899-12-30T00:00:00") {
let dateM0 = new Date(myData.DateHash.DateM);
dateM = dateM0.getFullYear() + '年' + (dateM0.getMonth() + 1) + '月' + dateM0.getDate() + '日';
}
workbook.sheet('param').cell('C17').value(dateH);
workbook.sheet('param').cell('C18').value(dateL);
workbook.sheet('param').cell('C19').value(dateM);
workbook.sheet('param').cell('C20').value(dataF[8][1]);
workbook.sheet('param').cell('C21').value(dataF[7][1]);
workbook.sheet('param').cell('C22').value(myData.DescriptionHash.DescriptionM);
workbook.sheet('param').cell('C23').value(data001.ClassHash.ClassA);
$.each(dataA, function (index, value) {
let i = index + 31;
console.log(value);
workbook.sheet('param').cell('C' + i).value(value[1]);
workbook.sheet('param').cell('F' + i).value(parseFloat(value[2].toString().replaceAll(/[¥,]/g, '')));
workbook.sheet('param').cell('I' + i).value(value[3]);
if (value[4] != '') {
let value4 = new Date(value[4]);
value[4] = value4.getFullYear() + '年' + (value4.getMonth() + 1) + '月' + value4.getDate() + '日';
}
if (value[5] == 0) {
value[5] = '';
}
workbook.sheet('param').cell('K' + i).value(value[4]);
workbook.sheet('param').cell('M' + i).value(value[5]);
});
break;
//----------------------------------------------------------------------------------------------------
//3.請負代金内訳書
case '請負代金内訳書':
workbook.sheet('param').cell('C2').value(customerName);
workbook.sheet('param').cell('C3').value(myData.ClassHash.Class031);
workbook.sheet('param').cell('C4').value(myData.ClassHash.Class007);
workbook.sheet('param').cell('C5').value(myData.ClassHash.Class026);
workbook.sheet('param').cell('C7').value(dataF[0][1]);
workbook.sheet('param').cell('C8').value(dataF[1][1]);
workbook.sheet('param').cell('C9').value(dataF[2][1]);
workbook.sheet('param').cell('C10').value(dataF[3][1]);
workbook.sheet('param').cell('C12').value(data001.ClassHash.ClassA);
workbook.sheet('param').cell('C13').value(data004.Title);
workbook.sheet('param').cell('C14').value(data003.ClassHash.ClassB);
workbook.sheet('param').cell('C15').value(data003.ClassHash.ClassC);
workbook.sheet('param').cell('C16').value(data003.ClassHash.ClassD);
workbook.sheet('param').cell('C17').value(data003.ClassHash.ClassE);
workbook.sheet('param').cell('C18').value(data003.ClassHash.ClassF);
workbook.sheet('param').cell('C19').value(eigyo1);
break;
//----------------------------------------------------------------------------------------------------
//4.御提案書
case '御提案書':
workbook.sheet('param').cell('C2').value(customerName);
workbook.sheet('param').cell('C3').value(myData.ClassHash.Class031);
workbook.sheet('param').cell('C4').value(myData.ClassHash.Class007);
workbook.sheet('param').cell('C5').value(myData.ClassHash.Class026);
workbook.sheet('param').cell('C6').value(data001.ClassHash.ClassA);
workbook.sheet('param').cell('C7').value(data004.Title);
workbook.sheet('param').cell('C8').value(data003.ClassHash.ClassB);
workbook.sheet('param').cell('C9').value(data003.ClassHash.ClassC);
workbook.sheet('param').cell('C10').value(data003.ClassHash.ClassD);
workbook.sheet('param').cell('C11').value(data003.ClassHash.ClassE);
workbook.sheet('param').cell('C12').value(data003.ClassHash.ClassF);
workbook.sheet('param').cell('C13').value(eigyo1);
workbook.sheet('param').cell('C14').value(dataF[4][1]);
workbook.sheet('param').cell('C15').value(dataF[6][1]);
workbook.sheet('param').cell('C16').value(myData.ClassHash.Class034 + '(' + myData.ClassHash.Class036 + ')');
workbook.sheet('param').cell('C17').value(data005.ClassHash.ClassB);
workbook.sheet('param').cell('C18').value(myData.ClassHash.Class037);
workbook.sheet('param').cell('C19').value(myData.ClassHash.Class038);
(myData.NumHash.Num017) ? workbook.sheet('param').cell('C20').value(parseFloat(myData.NumHash.Num017.toString().replaceAll(/[¥,]/g, ''))) : 0;
(myData.NumHash.Num018) ? workbook.sheet('param').cell('C21').value(parseFloat(myData.NumHash.Num018.toString().replaceAll(/[¥,]/g, ''))) : 0;
(myData.NumHash.Num011) ? workbook.sheet('param').cell('C22').value(parseFloat(myData.NumHash.Num011.toString().replaceAll(/[¥,]/g, ''))) : 0;
(myData.NumHash.Num012) ? workbook.sheet('param').cell('C23').value(parseFloat(myData.NumHash.Num012.toString().replaceAll(/[¥,]/g, ''))) : 0;
(myData.NumHash.Num013) ? workbook.sheet('param').cell('C24').value(parseFloat(myData.NumHash.Num013.toString().replaceAll(/[¥,]/g, ''))) : 0;
(myData.NumHash.Num014) ? workbook.sheet('param').cell('C25').value(parseFloat(myData.NumHash.Num014.toString().replaceAll(/[¥,]/g, ''))) : 0;
(myData.NumHash.Num015) ? workbook.sheet('param').cell('C26').value(parseFloat(myData.NumHash.Num015.toString().replaceAll(/[¥,]/g, ''))) : 0;
(myData.NumHash.Num016) ? workbook.sheet('param').cell('C27').value(parseFloat(myData.NumHash.Num016.toString().replaceAll(/[¥,]/g, ''))) : 0;
(myData.NumHash.Num019) ? workbook.sheet('param').cell('C28').value(parseFloat(myData.NumHash.Num019.toString().replaceAll(/[¥,]/g, ''))) : 0;
workbook.sheet('param').cell('C29').value(dataF[0][1]);
workbook.sheet('param').cell('C30').value(dataF[1][1]);
workbook.sheet('param').cell('C31').value(dataF[2][1]);
workbook.sheet('param').cell('C32').value(dataF[3][1]);
workbook.sheet('param').cell('C33').value(dataF[9][1]);
workbook.sheet('param').cell('C38').value(dataF[13][1]);
workbook.sheet('param').cell('C39').value(dataF[14][1]);
workbook.sheet('param').cell('C58').value(myData.DescriptionHash.DescriptionM);
$.each(dataA, function (index, value) {
let i = index + 64;
console.log(value);
workbook.sheet('param').cell('C' + i).value(value[1]);
workbook.sheet('param').cell('D' + i).value(value[2]);
});
break;
//----------------------------------------------------------------------------------------------------
//5.振込案内
case '振込案内':
workbook.sheet('param').cell('C2').value(customerName);
workbook.sheet('param').cell('C3').value(data001.ClassHash.ClassA);
workbook.sheet('param').cell('C4').value(data004.Title);
workbook.sheet('param').cell('C5').value(data003.ClassHash.ClassB);
workbook.sheet('param').cell('C6').value(data003.ClassHash.ClassC);
workbook.sheet('param').cell('C7').value(data003.ClassHash.ClassD);
workbook.sheet('param').cell('C8').value(data003.ClassHash.ClassE);
workbook.sheet('param').cell('C9').value(data003.ClassHash.ClassF);
workbook.sheet('param').cell('C10').value(eigyo1);
workbook.sheet('param').cell('C11').value(myData.ClassHash.ClassX);
workbook.sheet('param').cell('C12').value(data001.ClassHash.ClassA);
workbook.sheet('param').cell('C13').value(myData.ClassHash.ClassA);
//お客様名1
workbook.sheet('param').cell('C14').value(myData.ClassHash.Class001); //お客様名1_姓
workbook.sheet('param').cell('E14').value(myData.ClassHash.Class002);
//お客様名2
workbook.sheet('param').cell('C15').value(myData.ClassHash.Class009); //お客様名2_姓
workbook.sheet('param').cell('E15').value(myData.ClassHash.Class010);
console.log(myData.ClassHash.Class009)
if (myData.ClassHash.Class009 == '') {
workbook.sheet('振込案内').column("M").hidden(true);
workbook.sheet('振込案内').column("N").hidden(true);
workbook.sheet('振込案内').column("O").hidden(true);
workbook.sheet('振込案内').column("P").hidden(true);
workbook.sheet('振込案内').column("Q").hidden(true);
workbook.sheet('振込案内').column("R").hidden(true);
workbook.sheet('振込案内').column("S").hidden(true);
workbook.sheet('振込案内').column("T").hidden(true);
workbook.sheet('振込案内').column("U").hidden(true);
workbook.sheet('振込案内').column("V").hidden(true);
workbook.sheet('振込案内').column("W").hidden(true);
workbook.sheet('振込案内').column("X").hidden(true);
}
//お客様名3
workbook.sheet('param').cell('C16').value(myData.ClassHash.Class017); //お客様名3_姓
workbook.sheet('param').cell('E16').value(myData.ClassHash.Class018);
console.log(myData.ClassHash.Class0017)
if (myData.ClassHash.Class017 == '') {
workbook.sheet('振込案内').column("Y").hidden(true);
workbook.sheet('振込案内').column("Z").hidden(true);
workbook.sheet('振込案内').column("AA").hidden(true);
workbook.sheet('振込案内').column("AB").hidden(true);
workbook.sheet('振込案内').column("AC").hidden(true);
workbook.sheet('振込案内').column("AD").hidden(true);
workbook.sheet('振込案内').column("AE").hidden(true);
workbook.sheet('振込案内').column("AF").hidden(true);
workbook.sheet('振込案内').column("AG").hidden(true);
workbook.sheet('振込案内').column("AH").hidden(true);
workbook.sheet('振込案内').column("AI").hidden(true);
workbook.sheet('振込案内').column("AJ").hidden(true);
}
workbook.sheet('param').cell('C17').value(myData.ClassHash.Class003);
workbook.sheet('param').cell('E17').value(myData.ClassHash.Class004);
workbook.sheet('param').cell('C18').value(myData.ClassHash.Class011);
workbook.sheet('param').cell('E18').value(myData.ClassHash.Class012);
workbook.sheet('param').cell('C19').value(myData.ClassHash.Class019);
workbook.sheet('param').cell('E19').value(myData.ClassHash.Class020);
break;
//----------------------------------------------------------------------------------------------------
//6.ポイントクラブ初回登録
case 'ポイントクラブ初回登録':
workbook.sheet('param').cell('C2').value(myData.ClassHash.ClassA);
workbook.sheet('param').cell('C3').value(myData.ClassHash.ClassS);
break;
//----------------------------------------------------------------------------------------------------
//7.約款口座
case '約款口座':
let furikomi = myData.ClassHash.ClassX.split(' '); //口座情報をスペースで分割
workbook.sheet('param').cell('C2').value(furikomi[0] + ' ' + furikomi[1]); //銀行名
workbook.sheet('param').cell('C3').value(furikomi[2] + ' ' + furikomi[3]); //口座番号
workbook.sheet('param').cell('C4').value(data001.ClassHash.ClassA); //契約会社
break;
//----------------------------------------------------------------------------------------------------
//19.ハウスジーメン確認シート
case 'ハウスジーメン確認シート':
workbook.sheet('param').cell('C2').value(myData.ClassHash.Class007);
workbook.sheet('param').cell('C3').value(myData.ClassHash.ClassS);
break;
//----------------------------------------------------------------------------------------------------
//20.契約日スケジュール
case '契約日スケジュール':
workbook.sheet('param').cell('C2').value(myData.ClassHash.ClassS);
workbook.sheet('param').cell('C3').value(keiyakuDateStr);
workbook.sheet('param').cell('C4').value(myData.ClassHash.ClassX);
workbook.sheet('param').cell('C5').value(data001.ClassHash.ClassA);
workbook.sheet('param').cell('C6').value(data003.Title);
break;
//----------------------------------------------------------------------------------------------------
//21.契約時書類チェックシート
case '契約時書類チェックシート':
workbook.sheet('param').cell('C2').value(data001.ClassHash.ClassA);
workbook.sheet('param').cell('C3').value(data004.Title);
workbook.sheet('param').cell('C4').value(myData.ClassHash.ClassB);
workbook.sheet('param').cell('C5').value(myData.ClassHash.ClassA);
workbook.sheet('param').cell('C6').value(koujimei);
workbook.sheet('param').cell('C7').value(myData.ClassHash.ClassN);
break;
//----------------------------------------------------------------------------------------------------
//22.プランチェック依頼書
case 'プランチェック依頼書':
workbook.sheet('param').cell('C2').value(eigyo1);
workbook.sheet('param').cell('C3').value(sekkei1);
workbook.sheet('param').cell('C4').value(myData.ClassHash.ClassT);
workbook.sheet('param').cell('C5').value(myData.ClassHash.ClassS + ' 様');
workbook.sheet('param').cell('C6').value(myData.ClassHash.ClassA);
workbook.sheet('param').cell('C7').value('〒' + myData.ClassHash.Class028);
workbook.sheet('param').cell('C8').value(myData.ClassHash.Class029);
workbook.sheet('param').cell('C9').value(myData.ClassHash.Class031);
workbook.sheet('param').cell('C10').value(data004.Title);
workbook.sheet('param').cell('C11').value(data005.ClassHash.ClassB + ' ' + myData.ClassHash.Class036);
break;
//----------------------------------------------------------------------------------------------------
//25.敷地調査報告書
case '敷地調査報告書':
workbook.sheet('param').cell('C2').value(koujimei);
workbook.sheet('param').cell('C3').value(myData.ClassHash.Class031);
workbook.sheet('param').cell('C4').value(myData.ClassHash.Class029);
break;
//----------------------------------------------------------------------------------------------------
//27.委任状
case '委任状':
workbook.sheet('param').cell('C13').value(keiyakuDateStr);
workbook.sheet('param').cell('C14').value(SkeiyakuDateStr);
workbook.sheet('param').cell('C4').value(myData.ClassHash.Class007);
workbook.sheet('param').cell('C5').value(myData.ClassHash.Class001 + ' ' + myData.ClassHash.Class002);
workbook.sheet('param').cell('C6').value(myData.ClassHash.Class015);
workbook.sheet('param').cell('C7').value(myData.ClassHash.Class009 + ' ' + myData.ClassHash.Class010);
workbook.sheet('param').cell('C8').value(myData.ClassHash.Class023);
workbook.sheet('param').cell('C9').value(myData.ClassHash.Class017 + ' ' + myData.ClassHash.Class018);
workbook.sheet('param').cell('C10').value(myData.ClassHash.Class054); //法人名
workbook.sheet('param').cell('C11').value(myData.ClassHash.Class056); //代表者
break;
//----------------------------------------------------------------------------------------------------
case '粗利益確認書':
//粗利益確認書 データ
let DescA = [JSON.parse(arariData.DescriptionHash.DescriptionA), JSON.parse(arariData.DescriptionHash.Description021)]; //本体価格
let DescB = [JSON.parse(arariData.DescriptionHash.DescriptionB), JSON.parse(arariData.DescriptionHash.Description022)]; //付帯工事
let DescD = [JSON.parse(arariData.DescriptionHash.DescriptionD), JSON.parse(arariData.DescriptionHash.Description024)]; //本体工事上乗せ
let DescF = [JSON.parse(arariData.DescriptionHash.DescriptionF), JSON.parse(arariData.DescriptionHash.Description026)]; //確定付帯上乗せ
let DescH = [JSON.parse(arariData.DescriptionHash.DescriptionH), JSON.parse(arariData.DescriptionHash.Description028)]; //サービス項目
let DescI = [JSON.parse(arariData.DescriptionHash.DescriptionI), JSON.parse(arariData.DescriptionHash.Description029)]; //紹介料
let DescJ = [JSON.parse(arariData.DescriptionHash.DescriptionJ), JSON.parse(arariData.DescriptionHash.Description030)]; //値引き
let DescL = [JSON.parse(arariData.DescriptionHash.DescriptionL), JSON.parse(arariData.DescriptionHash.Description032)]; //その他工事
let Desc002 = [JSON.parse(arariData.DescriptionHash.Description002), JSON.parse(arariData.DescriptionHash.Description042)]; //中計1
let Desc008 = [JSON.parse(arariData.DescriptionHash.Description008), JSON.parse(arariData.DescriptionHash.Description048)]; //積算チェック
//共通項目
workbook.sheet('param').cell('C1').value(koujimei);
workbook.sheet('param').cell('C2').value(myData.ClassHash.ClassB);
workbook.sheet('param').cell('C3').value(myData.ClassHash.ClassA);
workbook.sheet('param').cell('C4').value(data004.Title);
workbook.sheet('param').cell('C5').value(data005.ClassHash.ClassB);
workbook.sheet('param').cell('C6').value(myData.ClassHash.Class043);
(myData.NumHash.Num015) ? workbook.sheet('param').cell('C7').value(parseFloat(myData.NumHash.Num015.toString().replaceAll(/[¥,]/g, ''))) : 0;
(myData.NumHash.Num016) ? workbook.sheet('param').cell('C8').value(parseFloat(myData.NumHash.Num016.toString().replaceAll(/[¥,]/g, ''))) : 0;
workbook.sheet('param').cell('C9').value(myData.ClassHash.Class034 + '(' + myData.ClassHash.Class036 + ')');
workbook.sheet('param').cell('C10').value(data003.Title);
workbook.sheet('param').cell('C11').value(eigyo12);
workbook.sheet('param').cell('C12').value(data001.ClassHash.ClassA);
(myData.NumHash.Num039) ? workbook.sheet('param').cell('C13').value(parseFloat(myData.NumHash.Num039.toString().replaceAll(/[¥,]/g, '')) / 100) : 0;
(myData.NumHash.Num050) ? workbook.sheet('param').cell('C14').value(parseFloat(myData.NumHash.Num050.toString().replaceAll(/[¥,]/g, ''))) : 0;
workbook.sheet('param').cell('C15').value(myData.ClassHash.ClassN);
let arariId = myData.ClassHash.Class190; //$('#Results_Class190').val();
if (arariId == '189113') {
arariId = $('#Results_Source189113 > tbody > tr > td:nth-child(1)')[0].textContent;
$p.set($('#Results_Class190'), arariId);
}
workbook.sheet('param').cell('C24').value(arariId); //粗利レコードのID
//粗利益確認書
let sheets = ['粗利益確認書(本契約)', '粗利益確認書(設計契約)'];
for (i = 0; i <= 1; i++) {
let sheetName = sheets[i];
let cnt = 11;
//本体金額
$.each(DescA[i], function (index, value) {
(value[1]) ? workbook.sheet(sheetName).cell('F' + cnt).value(value[1]) : 0;
(value[2]) ? workbook.sheet(sheetName).cell('G' + cnt).value(value[2]) : 0;
});
//付帯工事
cnt = 12;
$.each(DescB[i], function (index, value) {
(value[0]) ? workbook.sheet(sheetName).cell('C' + cnt).value(value[0]) : 0;
(value[1]) ? workbook.sheet(sheetName).cell('F' + cnt).value(parseFloat(value[1].toString().replaceAll(/[¥,]/g, ''))) : 0;
(value[2]) ? workbook.sheet(sheetName).cell('G' + cnt).value(parseFloat(value[2].toString().replaceAll(/[¥,]/g, ''))) : 0;
cnt = cnt + 1;
if (index == 9) {
return false;
}
});
//中計1
cnt = 24;
$.each(Desc002[i], function (index, value) {
(value[7]) ? workbook.sheet(sheetName).cell('L' + cnt).value(parseFloat(value[7].toString().replaceAll(/[¥,]/g, ''))) : 0;
});
//本体工事上乗せ
cnt = 25;
$.each(DescD[i], function (index, value) {
(value[0]) ? workbook.sheet(sheetName).cell('C' + cnt).value(value[0]) : 0;
(value[1]) ? workbook.sheet(sheetName).cell('F' + cnt).value(parseFloat(value[1].toString().replaceAll(/[¥,]/g, ''))) : 0;
(value[2]) ? workbook.sheet(sheetName).cell('G' + cnt).value(parseFloat(value[2].toString().replaceAll(/[¥,]/g, ''))) : 0;
(value[3]) ? workbook.sheet(sheetName).cell('H' + cnt).value(parseFloat(value[3].toString().replaceAll(/[¥,]/g, ''))) : 0;
(value[4]) ? workbook.sheet(sheetName).cell('I' + cnt).value(parseFloat(value[4].toString().replaceAll(/[¥,]/g, ''))) : 0;
cnt = cnt + 1;
if (index == 9) {
return false;
}
});
//確定付帯上乗せ
cnt = 37;
$.each(DescF[i], function (index, value) {
(value[0]) ? workbook.sheet(sheetName).cell('C' + cnt).value(value[0]) : 0;
(value[1]) ? workbook.sheet(sheetName).cell('F' + cnt).value(parseFloat(value[1].toString().replaceAll(/[¥,]/g, ''))) : 0;
(value[2]) ? workbook.sheet(sheetName).cell('G' + cnt).value(parseFloat(value[2].toString().replaceAll(/[¥,]/g, ''))) : 0;
(value[3]) ? workbook.sheet(sheetName).cell('H' + cnt).value(parseFloat(value[3].toString().replaceAll(/[¥,]/g, ''))) : 0;
(value[4]) ? workbook.sheet(sheetName).cell('I' + cnt).value(parseFloat(value[4].toString().replaceAll(/[¥,]/g, ''))) : 0;
cnt = cnt + 1;
if (index == 9) {
return false;
}
});
//サービス項目
cnt = 49;
$.each(DescH[i], function (index, value) {
(value[0]) ? workbook.sheet(sheetName).cell('C' + cnt).value(value[0]) : 0;
(value[1]) ? workbook.sheet(sheetName).cell('F' + cnt).value(parseFloat(value[1].toString().replaceAll(/[¥,]/g, ''))) : 0;
(value[2]) ? workbook.sheet(sheetName).cell('G' + cnt).value(parseFloat(value[2].toString().replaceAll(/[¥,]/g, ''))) : 0;
(value[3]) ? workbook.sheet(sheetName).cell('H' + cnt).value(parseFloat(value[3].toString().replaceAll(/[¥,]/g, ''))) : 0;
(value[4]) ? workbook.sheet(sheetName).cell('I' + cnt).value(parseFloat(value[4].toString().replaceAll(/[¥,]/g, ''))) : 0;
cnt = cnt + 1;
if (index == 9) {
return false;
}
});
//紹介料
cnt = 59;
$.each(DescI[i], function (index, value) {
(value[2]) ? workbook.sheet(sheetName).cell('G' + cnt).value(value[2]) : 0;
(value[3]) ? workbook.sheet(sheetName).cell('H' + cnt).value(parseFloat(value[3].toString().replaceAll(/[¥,]/g, ''))) : 0;
(value[4]) ? workbook.sheet(sheetName).cell('I' + cnt).value(parseFloat(value[4].toString().replaceAll(/[¥,]/g, ''))) : 0;
});
//値引き
cnt = 60;
$.each(DescJ[i], function (index, value) {
(value[1]) ? workbook.sheet(sheetName).cell('F' + cnt).value(parseFloat(value[1].toString().replaceAll(/[¥,]/g, ''))) : 0;
(value[2]) ? workbook.sheet(sheetName).cell('G' + cnt).value(parseFloat(value[2].toString().replaceAll(/[¥,]/g, ''))) : 0;
});
//その他工事
cnt = 63;
$.each(DescL[i], function (index, value) {
(value[0]) ? workbook.sheet(sheetName).cell('C' + cnt).value(value[0]) : 0;
(value[1]) ? workbook.sheet(sheetName).cell('F' + cnt).value(parseFloat(value[1].toString().replaceAll(/[¥,]/g, ''))) : 0;
(value[2]) ? workbook.sheet(sheetName).cell('G' + cnt).value(parseFloat(value[2].toString().replaceAll(/[¥,]/g, ''))) : 0;
(value[3]) ? workbook.sheet(sheetName).cell('H' + cnt).value(parseFloat(value[3].toString().replaceAll(/[¥,]/g, ''))) : 0;
(value[4]) ? workbook.sheet(sheetName).cell('I' + cnt).value(parseFloat(value[4].toString().replaceAll(/[¥,]/g, ''))) : 0;
cnt = cnt + 1;
if (index == 9) {
return false;
}
});
//積算チェック
cnt = 80;
$.each(Desc008[i], function (index, value) {
(value[2]) ? workbook.sheet(sheetName).cell('G' + cnt).value(parseFloat(value[2].toString().replaceAll(/[¥,]/g, ''))) : 0;
});
}
break;
//----------------------------------------------------------------------------------------------------
}
return workbook.outputAsync();
});
}
function getWorkbook(guid) {
return new Promise(function (resolve, reject) {
let json = {
'ApiVersion': 1.1,
'ApiKey': apiKey,
};
let url = 'https://' + location.hostname + '/pleasanter/api/binaries/' + guid + '/get';
let req = new XMLHttpRequest();
req.open('post', url, true);
req.responseType = 'json';
req.onreadystatechange = function () {
if (req.readyState === 4) {
if (req.status === 200) {
let buf = base64ToArrayBuffer(req.response.Response.Base64);
resolve(XlsxPopulate.fromDataAsync(buf));
} else {
reject('Received a ' + req.status + ' HTTP code.');
}
}
};
req.send(JSON.stringify(json));
});
}
function base64ToArrayBuffer(base64) {
var binaryString = atob(base64);
var bytes = new Uint8Array(binaryString.length);
for (var i = 0; i < binaryString.length; i++) {
bytes[i] = binaryString.charCodeAt(i);
}
return bytes.buffer;
}
function getMyData() {
let thisId = $p.id();
$p.apiGet({
'id': thisId,
'data': {
'ApiVersion': 1.1,
'ApiKey': apiKey,
},
'async': false,
'done': function (data) {
//console.log('マスターシートデータを取得しました');
myData = data.Response.Data[0];
//console.log(myData);
},
'fail': function (data) {
console.log(data);
}
});
}
//自分のデータを取得
function getArariData() {
let arariId = myData.ClassHash.Class190; //$('#Results_Class190').val();
if (arariId != '') {
if (arariId == '189113') {
if ($('#Results_Source189113 > tbody > tr > td:nth-child(1)').length > 0) {
//arariIdがテーブルデフォ値の場合、再取得
arariId = $('#Results_Source189113 > tbody > tr > td:nth-child(1)')[0].textContent;
$p.set($('#Results_Class190'), arariId);
}
}
if (arariId != '189113') {
$p.apiGet({
'id': arariId,
'data': {
'ApiVersion': 1.1,
'ApiKey': apiKey,
},
'async': false,
'done': function (data) {
//console.log(myData);
arariData = data.Response.Data[0];
},
'fail': function (data) {
console.log(data);
}
});
}
}
}