From a069ab332efaaddc89e4963b8c4fc50d7301b91c Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期五, 22 十二月 2023 14:00:21 +0800
Subject: [PATCH] 2023-12-22

---
 src/menu/debug/index.jsx |   17 ++++++++++++-----
 1 files changed, 12 insertions(+), 5 deletions(-)

diff --git a/src/menu/debug/index.jsx b/src/menu/debug/index.jsx
index 3ab0194..99ff975 100644
--- a/src/menu/debug/index.jsx
+++ b/src/menu/debug/index.jsx
@@ -408,7 +408,7 @@
           defSql = this.getSysDefaultSql(cell, item, process, group, true)
         }
 
-        let backSql = this.getSysBackSql(cell.verify.cbScripts)
+        let backSql = this.getSysBackSql(cell.verify.cbScripts, cell.cbTable)
 
         if (backSql) {
           backSql = `${defSql}
@@ -484,7 +484,7 @@
     return sql
   }
 
-  getSysBackSql = (scripts) => {
+  getSysBackSql = (scripts, cbTable) => {
     let _prev = ''
     let _back = ''
 
@@ -521,19 +521,26 @@
 
       if (!tbName) return
 
-      tbName = tbName.replace(/@|#/, '')
-
       let content = tb.replace(/(@|#)[a-zA-Z0-9_]+\s+table\s+\(\s*/, '').replace(/\s*\)$/, '')
+      content = content.replace(/decimal\(\s*\d+\s*,\s*\d+\s*\)/ig, 'decimal')
 
       let keys = []
       let vals = []
       let error = false
+      let istop = new RegExp(cbTable + '$', 'ig').test(tbName)
+      let id = tbName.replace(/@|#/, '')
 
       content.split(/\s*,\s*/).forEach(m => {
         let ms = m.split(/\s+/)
         if (ms.length > 1) {
           keys.push(ms[0])
-          if (/nvarchar/i.test(ms[1])) {
+          if (/^mk_level$/i.test(ms[0])) {
+            vals.push(istop ? `'1'` : `'2'`)
+          } else if (/^mk_id$/i.test(ms[0])) {
+            vals.push(istop ? `'${cbTable}'` : `'${id}'`)
+          } else if (/^mk_bid$/i.test(ms[0])) {
+            vals.push(istop ? `''` : `'${cbTable}'`)
+          } else if (/nvarchar/i.test(ms[1])) {
             vals.push(`'mk'`)
           } else if (/date/i.test(ms[1])) {
             vals.push(`'1949-10-01'`)

--
Gitblit v1.8.0