Forráskód Böngészése

句模式添加josn及不展示问题

qinpeng 2 éve
szülő
commit
26e0c44274
1 módosított fájl, 87 hozzáadás és 98 törlés
  1. 87 98
      src/views/wordcard/cread.vue

+ 87 - 98
src/views/wordcard/cread.vue

@@ -802,118 +802,107 @@ export default {
                 sentenceItem.push({});
               }
             }
-            this.loading = true;
-            let MethodName = "hz_resource_manager-GetHZStrokesContent";
-            sentenceItem.forEach((items, index) => {
+            allArr.push(JSON.parse(JSON.stringify(sentenceItem)));
+          }
+          if (data.miaoRedBoxNumber > 0 && data.writeBoxNumber > 0) {
+            let sentenceMiao = [];
+            for (let k = 0; k < sentence; k++) {
+              let sentenceItemMiao = [];
+              this.loading = true;
+              for (let s = 0; s < data.rowNumber; s++) {
+                if (k * data.rowNumber + s < item.length) {
+                  sentenceItemMiao[s] = {
+                    con: item[k * data.rowNumber + s],
+                    miaoRed: true,
+                  };
+                  let MethodName = "hz_resource_manager-GetHZStrokesContent";
+                  getLogin(MethodName, { hz: item[k * data.rowNumber + s] })
+                    .then((res) => {
+                      this.$set(sentenceItemMiao[s], "hzDetail", {
+                        hz_json: res,
+                      });
+                    })
+                    .catch(() => {
+                      this.loading = false;
+                    });
+                } else {
+                  sentenceItemMiao[s] = {};
+                }
+              }
+              sentenceMiao.push(JSON.parse(JSON.stringify(sentenceItemMiao)));
+            }
+            this.loading = false;
+            // 描红内容
+            for (let l = 0; l < data.miaoRedBoxNumber; l++) {
+              for (let j = 0; j < sentenceMiao.length; j++) {
+                sentenceArr.push(JSON.parse(JSON.stringify(sentenceMiao[j])));
+              }
+            }
+          }
+          // 书写内容
+          if (data.writeBoxNumber > 0) {
+            for (
+              let w = 0;
+              w < Number(sentence) * Number(data.writeBoxNumber);
+              w++
+            ) {
+              let sentenceItemWrite = [];
+              for (let j = 0; j < data.rowNumber; j++) {
+                sentenceItemWrite.push({});
+              }
+              sentenceArr.push(JSON.parse(JSON.stringify(sentenceItemWrite)));
+            }
+          }
+          sentenceArr = sentenceArr.slice(
+            0,
+            Number(sentence) * Number(data.writeBoxNumber)
+          );
+          sentenceArr.forEach((itemS, indexS) => {
+            allArr.push(JSON.parse(JSON.stringify(itemS)));
+          });
+        });
+
+        if (data.lastNullrow > 0) {
+          for (let t = 0; t < data.lastNullrow; t++) {
+            let sentenceItemNull = [];
+            for (let j = 0; j < data.rowNumber; j++) {
+              sentenceItemNull.push({});
+            }
+            allArr.push(JSON.parse(JSON.stringify(sentenceItemNull)));
+          }
+        }
+
+        data.result = this.arrSplice(allArr, data.pageNumber);
+        this.loading = true;
+        let MethodName = "hz_resource_manager-GetHZStrokesContent";
+        data.result.forEach((items, index) => {
+          items.forEach((itemss, indexs) => {
+            itemss.forEach((itemsss, indexss) => {
               let obj = {
-                hz: items.con,
+                hz: itemsss.con,
               };
-              items.hzDetail = null;
+              itemsss.hzDetail = null;
               getLogin(MethodName, obj)
                 .then((res) => {
-                  this.$set(sentenceItem[index], "hzDetail", res);
-                  this.$forceUpdate();
-                  if (index == sentenceItem.length - 1) {
+                  itemsss.hzDetail = res;
+                  if (
+                    index == data.result.length - 1 &&
+                    indexs == items.length - 1 &&
+                    indexss == itemss.length - 1
+                  ) {
+                    this.writeTableData = data;
                     this.loading = false;
-                    allArr.push(JSON.parse(JSON.stringify(sentenceItem)));
                   }
                 })
                 .catch(() => {
                   this.loading = false;
                 });
             });
-          }
-          let hzTimer = setInterval(() => {
-            if (!this.loading) {
-              clearInterval(hzTimer);
-              hzTimer = null;
-
-              if (data.miaoRedBoxNumber > 0 && data.writeBoxNumber > 0) {
-                let sentenceMiao = [];
-                for (let k = 0; k < sentence; k++) {
-                  let sentenceItemMiao = [];
-                  this.loading = true;
-                  for (let s = 0; s < data.rowNumber; s++) {
-                    if (k * data.rowNumber + s < item.length) {
-                      sentenceItemMiao[s] = {
-                        con: item[k * data.rowNumber + s],
-                        miaoRed: true,
-                      };
-                      let MethodName =
-                        "hz_resource_manager-GetHZStrokesContent";
-                      getLogin(MethodName, { hz: item[k * data.rowNumber + s] })
-                        .then((res) => {
-                          this.$set(sentenceItemMiao[s], "hzDetail", {
-                            hz_json: res,
-                          });
-                        })
-                        .catch(() => {
-                          this.loading = false;
-                        });
-                    } else {
-                      sentenceItemMiao[s] = {};
-                    }
-                  }
-                  sentenceMiao.push(
-                    JSON.parse(JSON.stringify(sentenceItemMiao))
-                  );
-                }
-                this.loading = false;
-                // 描红内容
-                for (let l = 0; l < data.miaoRedBoxNumber; l++) {
-                  for (let j = 0; j < sentenceMiao.length; j++) {
-                    sentenceArr.push(
-                      JSON.parse(JSON.stringify(sentenceMiao[j]))
-                    );
-                  }
-                }
-              }
-              // 书写内容
-              if (data.writeBoxNumber > 0) {
-                for (
-                  let w = 0;
-                  w < Number(sentence) * Number(data.writeBoxNumber);
-                  w++
-                ) {
-                  let sentenceItemWrite = [];
-                  for (let j = 0; j < data.rowNumber; j++) {
-                    sentenceItemWrite.push({});
-                  }
-                  sentenceArr.push(
-                    JSON.parse(JSON.stringify(sentenceItemWrite))
-                  );
-                }
-              }
-              sentenceArr = sentenceArr.slice(
-                0,
-                Number(sentence) * Number(data.writeBoxNumber)
-              );
-              sentenceArr.forEach((itemS, indexS) => {
-                allArr.push(JSON.parse(JSON.stringify(itemS)));
-              });
-            }
           });
         });
-        let hzTimer = setInterval(() => {
-          if (!this.loading) {
-            clearInterval(hzTimer);
-            hzTimer = null;
-            if (data.lastNullrow > 0) {
-              for (let t = 0; t < data.lastNullrow; t++) {
-                let sentenceItemNull = [];
-                for (let j = 0; j < data.rowNumber; j++) {
-                  sentenceItemNull.push({});
-                }
-                allArr.push(JSON.parse(JSON.stringify(sentenceItemNull)));
-              }
-            }
 
-            data.result = this.arrSplice(allArr, data.pageNumber);
-            this.writeTableData = data;
-            this.$forceUpdate();
-            this.isCread = true;
-          }
-        });
+        this.$forceUpdate();
+        this.isCread = true;
       }
       // // 定时 接口请求结束再执行
       // let hzTimer = setInterval(() => {