### [[2025]]年 - [[2025-08|08月]], [[2025-08-01|<]] [[第214天]] [[2025-08-03|>]] , 土曜日 --- ## 記事 ```dataviewjs const container = this.container; // ========== 生成月份列表 ========== const allPages = dv.pages(); const monthSet = new Set(); for (const p of allPages) { const match = p.file.name.match(/^2025-(\d{2})/); if (match) monthSet.add(`2025-${match[1]}`); } const sortedMonths = Array.from(monthSet).sort(); // ========== 创建下拉框 ========== const monthSelect = document.createElement("select"); monthSelect.style.marginBottom = "1em"; monthSelect.style.padding = "4px"; for (const m of sortedMonths) { const option = document.createElement("option"); option.value = m; option.text = m; monthSelect.appendChild(option); } container.appendChild(monthSelect); // ========== 表格容器 ========== const tableDiv = document.createElement("div"); container.appendChild(tableDiv); // ========== 渲染表格函数 ========== function renderTableForMonth(month) { const pages = dv.pages() .where(p => p.file.name.startsWith(month)); let amex = 0, tongyi = 0, nashiga = 0; let use_tongyi = 0, use_nashiga = 0; let sal_tongyi = 0, sal_nashiga = 0; let income_nashiga = 0, income_tongyi = 0; let special_tongyi = 0; for (const d of pages) { amex += d.Oamex || 0; tongyi += d.Otongyi || 0; nashiga += d.Onashiga || 0; use_tongyi += d.Utongyi || 0; use_nashiga += d.Unashiga || 0; sal_tongyi += d.Stongyi || 0; sal_nashiga += d.Snashiga || 0; income_nashiga += d.Inashiga * 20 || 0; income_tongyi += d.Itongyi * 20 || 0; special_tongyi += d.Otongyi1 || 0; } const oOUTall = amex + tongyi + nashiga; const oUSEall = use_tongyi + use_nashiga; const oSALall = sal_tongyi + sal_nashiga; const oALL = oOUTall + oUSEall + oSALall; const iALL = income_nashiga + income_tongyi; const balance = income_nashiga - oALL; const tongyiTOnashigaM = (amex + nashiga - tongyi) * 0.5; const tongyiTOnashigaU = (use_nashiga - use_tongyi) * 0.5; const tongyiTOnashigaS = (sal_nashiga - sal_tongyi) * 0.5; const tongyiTOnashigaI = income_nashiga * 0.5; const xyFEEnashiga = -income_nashiga * 0.016; const tongyiTOnashigaALL = tongyiTOnashigaM + tongyiTOnashigaU + tongyiTOnashigaS + tongyiTOnashigaI + special_tongyi + xyFEEnashiga * 0.5; let tableHTML = ` <table style="width:100%; border-collapse: collapse; text-align: center; border: 1px solid #ccc;"> <thead> <tr style="background:#1e5587;"> <th style="border:1px solid #ccc; padding:4px;">分类</th> <th style="border:1px solid #ccc; padding:4px;">细项</th> <th style="border:1px solid #ccc; padding:4px;">金额 (¥)</th> </tr> </thead> <tbody> <tr><td rowspan="4" style="border:1px solid #ccc; padding:4px;">货款</td><td style="border:1px solid #ccc; padding:4px;">Amex用了</td><td style="border:1px solid #ccc; padding:4px;">${amex.toLocaleString()}</td></tr> <tr><td style="border:1px solid #ccc; padding:4px;">Tongyi用了</td><td style="border:1px solid #ccc; padding:4px;">${tongyi.toLocaleString()}</td></tr> <tr><td style="border:1px solid #ccc; padding:4px;">Tongyi自用</td><td style="border:1px solid #ccc; padding:4px;">${special_tongyi.toLocaleString()}</td></tr> <tr><td style="border:1px solid #ccc; padding:4px;">Nashiga用了</td><td style="border:1px solid #ccc; padding:4px;">${nashiga.toLocaleString()}</td></tr> <tr style="background:#353b47;"><td colspan="2" style="border:1px solid #ccc; padding:4px;">tongyi给nashiga货款(amex一半nashiga一半 - tongyi一半)</td><td style="border:1px solid #ccc; padding:4px;"><b>${tongyiTOnashigaM.toLocaleString()}</b></td></tr> <tr><td rowspan="2" style="border:1px solid #ccc; padding:4px;">消耗</td><td style="border:1px solid #ccc; padding:4px;">Tongyi</td><td style="border:1px solid #ccc; padding:4px;">${use_tongyi.toLocaleString()}</td></tr> <tr><td style="border:1px solid #ccc; padding:4px;">Nashiga</td><td style="border:1px solid #ccc; padding:4px;">${use_nashiga.toLocaleString()}</td></tr> <tr style="background:#353b47;"><td colspan="2" style="border:1px solid #ccc; padding:4px;">tongyi给nashiga消耗</td><td style="border:1px solid #ccc; padding:4px;"><b>${tongyiTOnashigaU.toLocaleString()}</b></td></tr> <tr><td rowspan="2" style="border:1px solid #ccc; padding:4px;">工资</td><td style="border:1px solid #ccc; padding:4px;">Tongyi</td><td style="border:1px solid #ccc; padding:4px;">${sal_tongyi.toLocaleString()}</td></tr> <tr><td style="border:1px solid #ccc; padding:4px;">Nashiga</td><td style="border:1px solid #ccc; padding:4px;">${sal_nashiga.toLocaleString()}</td></tr> <tr style="background:#353b47;"><td colspan="2" style="border:1px solid #ccc; padding:4px;">tongyi给nashiga工资</td><td style="border:1px solid #ccc; padding:4px;"><b>${tongyiTOnashigaS.toLocaleString()}</b></td></tr> <tr style="background:#353b47;"><td colspan="2" style="border:1px solid #ccc; padding:4px;">总支出</td><td style="border:1px solid #ccc; padding:4px;"><b>${oALL.toLocaleString()}</b></td></tr> <tr><td rowspan="3" style="border:1px solid #ccc; padding:4px;">收入</td><td style="border:1px solid #ccc; padding:4px;">Nashiga部份</td><td style="border:1px solid #ccc; padding:4px;">${income_nashiga.toLocaleString()}</td></tr> <tr><td style="border:1px solid #ccc; padding:4px;">Nashiga部份手续费</td><td style="border:1px solid #ccc; padding:4px;">${Math.round(xyFEEnashiga).toLocaleString()}</td></tr> <tr><td style="border:1px solid #ccc; padding:4px;">Tongyi部份</td><td style="border:1px solid #ccc; padding:4px;">${income_tongyi.toLocaleString()}</td></tr> <tr style="background:#353b47;"><td colspan="2" style="border:1px solid #ccc; padding:4px;">tongyi给nashiga收入</td><td style="border:1px solid #ccc; padding:4px;"><b>${tongyiTOnashigaI.toLocaleString()}</b></td></tr> <tr style="background:#24292f;"><td colspan="2" style="border:1px solid #ccc; padding:4px;">tongyi要给nashiga(上面3个要给+tongyi自用-手续费一半)</td><td style="border:1px solid #ccc; padding:4px;"><b>${Math.round(tongyiTOnashigaALL).toLocaleString()}</b></td></tr> <tr style="background:#24292f;"><td colspan="2" style="border:1px solid #ccc; padding:4px;">亏损</td><td style="border:1px solid #ccc; padding:4px; color:${balance >= 0 ? 'green' : 'red'};"><b>${balance.toLocaleString()}</b></td></tr> </tbody> </table> `; tableDiv.innerHTML = tableHTML; } // 初始渲染 if (sortedMonths.length > 0) { renderTableForMonth(sortedMonths[0]); } // 切换月份 monthSelect.addEventListener("change", () => { renderTableForMonth(monthSelect.value); }); ``` #### 出账 #### 出账 ##### 货款 ###### amex Oamex:: 12064 10010+2054 ###### tongyi Otongyi:: ###### nashiga Onashiga:: 2999 2999 ##### 消耗 ###### tongyi Utongyi:: ###### nashiga Unashiga:: ##### 工资 ###### tongyi Stongyi:: ###### nashiga Snashiga:: #### 入账 Inashiga:: 82 ###### tongyi Itongyi:: --- # memos https://nd.beday.cc/d/Noody/C106%E4%BC%9A%E5%9C%BA%E5%9C%B0%E5%9B%BE%E5%8F%8A%E7%94%BB%E5%B8%88%E4%BF%A1%E6%81%AF/%E4%B8%80%E6%97%A5%E7%9B%AE/%E4%B8%80%E6%97%A5%E7%9B%AE%E4%B8%9C7.pdf https://nd.beday.cc/d/Noody/C106%E4%BC%9A%E5%9C%BA%E5%9C%B0%E5%9B%BE%E5%8F%8A%E7%94%BB%E5%B8%88%E4%BF%A1%E6%81%AF/%E4%B8%80%E6%97%A5%E7%9B%AE/%E4%B8%80%E6%97%A5%E7%9B%AE%E4%B8%9C7.pdf 一日东456 キ附近 东7T N 附近 https://nd.beday.cc/d/Noody/C106%E4%BC%9A%E5%9C%BA%E5%9C%B0%E5%9B%BE%E5%8F%8A%E7%94%BB%E5%B8%88%E4%BF%A1%E6%81%AF/%E4%BA%8C%E6%97%A5%E7%9B%AE/%E4%BA%8C%E6%97%A5%E7%9B%AE%E8%A5%BF12.pdf cosplay在二日西 4806+4855+4855 14516 * 1.015+12+12+12 = 14769.74 14769-24260