From f14ea940fb32105de8b592992e3f53c62f31d84d Mon Sep 17 00:00:00 2001
From: riku <risaku@163.com>
Date: 星期四, 22 一月 2026 16:42:51 +0800
Subject: [PATCH] 2026.1.22

---
 service/ledgerservice.js |  111 +++++++++++++++++++++++++++++++++++--------------------
 1 files changed, 71 insertions(+), 40 deletions(-)

diff --git a/service/ledgerservice.js b/service/ledgerservice.js
index a91f93b..34442e4 100644
--- a/service/ledgerservice.js
+++ b/service/ledgerservice.js
@@ -1,6 +1,7 @@
-const Multipart = require('../utils/Multipart.min')
-const $f = require('./baserequest')
-const util = require('../utils/util')
+import serviceutils from "./serviceutils";
+const Multipart = require('../utils/Multipart.min');
+const $f = require('./baserequest');
+const util = require('../utils/util');
 
 module.exports = {
   //鑾峰彇鍙拌处绫诲瀷
@@ -9,57 +10,64 @@
       url: `/ledger/${userId}/summary`,
       params: {
         sceneType: sceneType,
-        time: time
+        time: time,
       },
-    }
-    Object.assign(cb, fun)
+    };
+    Object.assign(cb, fun);
 
-    let fun1 = util.deepCopy(cb)
+    let fun1 = util.deepCopy(cb);
     fun1.success = function (res) {
       res.forEach(r => {
-        r.iconUrl = $f.basePicUrl + r.iconUrl
+        r.iconUrl = $f.basePicUrl + r.iconUrl;
       });
-      cb.success(res)
-    }
-    $f.get(fun1)
+      cb.success(res);
+    };
+    $f.get(fun1);
   },
 
   //涓婁紶鍙拌处
-  uploadLedger: function (userId, ledger, paths, fun) {
-    const fields = [{
-      name: 'params',
-      value: JSON.stringify([ledger])
-    }]
-    const files = []
+  uploadLedger: function (userId, ledger, namePairs, paths, fun) {
+    const fields = [
+      {
+        name: 'params',
+        value: JSON.stringify([ledger]),
+      },
+      {
+        name: 'fileNames',
+        value: JSON.stringify(namePairs),
+      }
+    ];
+    const files = [];
     paths.forEach(p => {
       files.push({
         name: 'images',
-        filePath: p
-      })
+        filePath: p,
+      });
     });
     console.log(files);
     let p = new Multipart({
       fields,
-      files
-    }).submit($f.baseUrl + `/ledger/${userId}/upload`)
+      files,
+    }).submit($f.baseUrl + `/ledger/${userId}/upload`);
     p.then(res => {
-      fun.success(res)
-    })
+      fun.success(res);
+    });
   },
 
   // 涓婁紶涓嶆秹鍙婂彴璐�
-  uploadNoLedger: function(userId, time, ledgerIdList, fun) {
+  uploadNoLedger: function (userId, time, remark, ledgerIdList, fun) {
     let cb = {
       url: '/ledger/upload/noLedger',
       params: {
         userId: userId,
-        time: time
+        time: time,
+        remark: remark,
       },
       data: ledgerIdList,
-    }
-    Object.assign(cb, fun)
+    };
+    Object.assign(cb, fun);
 
-    $f.post(cb)
+    $f.post(cb);
   },
 
   //鑾峰彇鍙拌处璇︽儏
@@ -69,25 +77,48 @@
       params: {
         sceneType: sceneType,
       },
-    }
+    };
     if (ledgerSubTypeId) {
-      cb.params.ledgerSubTypeId = ledgerSubTypeId
+      cb.params.ledgerSubTypeId = ledgerSubTypeId;
     }
     if (time) {
-      cb.params.time = time
+      cb.params.time = time;
     }
-    Object.assign(cb, fun)
+    Object.assign(cb, fun);
 
-    let fun1 = util.deepCopy(cb)
+    let fun1 = util.deepCopy(cb);
     fun1.success = function (res) {
       res.forEach(r => {
         r.path1 = r.path1.split(';').map((value, index) => {
-          return $f.basePicUrl + value
-        })
+          return $f.basePicUrl + value;
+        });
+        r._files = serviceutils.formatLedgerPath(r.path1)
+        r._fileType = serviceutils.judgeLedgerFileType(r._files)
       });
-      cb.success(res)
-    }
-    
-    $f.get(fun1)
+      cb.success(res);
+    };
+
+    $f.get(fun1);
   },
-}
\ No newline at end of file
+
+  /**
+   * 澶嶅埗鍙拌处
+   * @param {string} userId 鐢ㄦ埛id
+   * @param {string} time 骞存湀锛屾牸寮廦YYY-MM
+   * @param {Array} sourceLedgerList 鍙拌处澶嶅埗婧恵subTypeId:寰呭鍒剁殑鍙拌处绫诲瀷id, time: 寰呭鍒剁殑鍙拌处鎵�鍦ㄦ湀浠斤紝涓嶅~鍐欏垯榛樿浣跨敤鏈�鏂颁竴鏉¤褰曚綔涓哄鍒舵簮}
+   * @param {*} fun 
+   */
+  copyLedger: function (userId, time, sourceLedgerList, fun) {
+    let cb = {
+      url: '/ledger/copy',
+      params: {
+        userId: userId,
+        time: time,
+      },
+      data: sourceLedgerList,
+    };
+    Object.assign(cb, fun);
+
+    $f.post(cb);
+  },
+};

--
Gitblit v1.9.3