lrf402788946 vor 4 Jahren
Ursprung
Commit
6239db8a84
1 geänderte Dateien mit 24 neuen und 17 gelöschten Zeilen
  1. 24 17
      app/service/schtime.js

+ 24 - 17
app/service/schtime.js

@@ -18,27 +18,34 @@ class SchtimeService extends CrudService {
     console.log(_.isArray(data));
 
     for (const elm of data) {
+      // 循环:elm代表上传上来的每个学校
       const schtime = await this.model.findById(elm.id);
+      // 找到该学校原数据
       if (schtime) {
-        schtime.schid = elm.schid;
-        schtime.year = elm.year;
-        schtime.planid = elm.planid;
-        schtime.remark = elm.remark;
-        schtime.daterange = elm.daterange;
+        // // 原数据处理,可以不用吧
+        // schtime.schid = elm.schid;
+        // schtime.year = elm.year;
+        // schtime.planid = elm.planid;
+        // schtime.remark = elm.remark;
+        // schtime.daterange = elm.daterange;
+        // // 工具方法整理出需要删除,修改,添加的数据,都是array的形式
         const { deletearray, updatearray, addarray } = await this.filterarray(schtime.term, elm.term);
-        let termInfo = _.difference(schtime.term, deletearray);
-        console.log(termInfo);
-        for (const terminfo of termInfo) {
-          const updateinfo = _.filter(updatearray, item => item.id === terminfo.id);
-          terminfo.termnum = updateinfo.termnum;
-          terminfo.termid = updateinfo.termid;
-          if (updateinfo.number) terminfo.number = updateinfo.number;
-          if (updateinfo.type) terminfo.type = updateinfo.type;
-          if (updateinfo.carnum) terminfo.carnum = updateinfo.carnum;
-        }
-        console.log(termInfo);
+        // // 取出原数组中不需要删除的数据?多此一举啊,上面不是有三种情况的数据了嘛,.直接处理啊
+        // let termInfo = _.difference(schtime.term, deletearray);
+        schtime.term = [ ...updatearray, ...addarray ];
+        console.log(schtime);
+        // console.log(termInfo);
+        // for (const terminfo of termInfo) {
+        //   // const updateinfo = _.filter(updatearray, item => item.id === terminfo.id);
+        // //   terminfo.termnum = updateinfo.termnum;
+        // //   terminfo.termid = updateinfo.termid;
+        // //   if (updateinfo.number) terminfo.number = updateinfo.number;
+        // //   if (updateinfo.type) terminfo.type = updateinfo.type;
+        // //   if (updateinfo.carnum) terminfo.carnum = updateinfo.carnum;
+        // }
+        // console.log(termInfo);
 
-        termInfo = _.concat(termInfo, addarray);
+        // termInfo = _.concat(termInfo, addarray);
         // schtime.term = termInfo;
         // await schtime.save();
       }