瀏覽代碼

fix 回收订单&增加tailwind.css

haveyou 1 年之前
父節點
當前提交
f09b84bce0

+ 515 - 11
package-lock.json

@@ -52,12 +52,25 @@
         "prettier": "~3.3.3",
         "rimraf": "~5.0.10",
         "sass": "~1.77.8",
+        "tailwindcss": "^3.4.15",
         "unplugin-vue-components": "~0.27.4",
         "vite": "~5.4.2",
         "vite-plugin-compression": "~0.5.1",
         "vue-eslint-parser": "~9.4.3"
       }
     },
+    "node_modules/@alloc/quick-lru": {
+      "version": "5.2.0",
+      "resolved": "https://registry.npmmirror.com/@alloc/quick-lru/-/quick-lru-5.2.0.tgz",
+      "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==",
+      "dev": true,
+      "engines": {
+        "node": ">=10"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
     "node_modules/@amap/amap-jsapi-loader": {
       "version": "1.0.1",
       "resolved": "https://registry.npmmirror.com/@amap/amap-jsapi-loader/-/amap-jsapi-loader-1.0.1.tgz",
@@ -734,11 +747,53 @@
         "url": "https://github.com/chalk/strip-ansi?sponsor=1"
       }
     },
+    "node_modules/@jridgewell/gen-mapping": {
+      "version": "0.3.5",
+      "resolved": "https://registry.npmmirror.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz",
+      "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==",
+      "dev": true,
+      "dependencies": {
+        "@jridgewell/set-array": "^1.2.1",
+        "@jridgewell/sourcemap-codec": "^1.4.10",
+        "@jridgewell/trace-mapping": "^0.3.24"
+      },
+      "engines": {
+        "node": ">=6.0.0"
+      }
+    },
+    "node_modules/@jridgewell/resolve-uri": {
+      "version": "3.1.2",
+      "resolved": "https://registry.npmmirror.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz",
+      "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==",
+      "dev": true,
+      "engines": {
+        "node": ">=6.0.0"
+      }
+    },
+    "node_modules/@jridgewell/set-array": {
+      "version": "1.2.1",
+      "resolved": "https://registry.npmmirror.com/@jridgewell/set-array/-/set-array-1.2.1.tgz",
+      "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==",
+      "dev": true,
+      "engines": {
+        "node": ">=6.0.0"
+      }
+    },
     "node_modules/@jridgewell/sourcemap-codec": {
       "version": "1.5.0",
       "resolved": "https://registry.npmmirror.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz",
       "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ=="
     },
+    "node_modules/@jridgewell/trace-mapping": {
+      "version": "0.3.25",
+      "resolved": "https://registry.npmmirror.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz",
+      "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==",
+      "dev": true,
+      "dependencies": {
+        "@jridgewell/resolve-uri": "^3.1.0",
+        "@jridgewell/sourcemap-codec": "^1.4.14"
+      }
+    },
     "node_modules/@nodelib/fs.scandir": {
       "version": "2.1.5",
       "resolved": "https://registry.npmmirror.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
@@ -1383,6 +1438,12 @@
         "url": "https://github.com/chalk/ansi-styles?sponsor=1"
       }
     },
+    "node_modules/any-promise": {
+      "version": "1.3.0",
+      "resolved": "https://registry.npmmirror.com/any-promise/-/any-promise-1.3.0.tgz",
+      "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==",
+      "dev": true
+    },
     "node_modules/anymatch": {
       "version": "3.1.3",
       "resolved": "https://registry.npmmirror.com/anymatch/-/anymatch-3.1.3.tgz",
@@ -1460,6 +1521,12 @@
         "safe-buffer": "~5.1.0"
       }
     },
+    "node_modules/arg": {
+      "version": "5.0.2",
+      "resolved": "https://registry.npmmirror.com/arg/-/arg-5.0.2.tgz",
+      "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==",
+      "dev": true
+    },
     "node_modules/argparse": {
       "version": "2.0.1",
       "resolved": "https://registry.npmmirror.com/argparse/-/argparse-2.0.1.tgz",
@@ -1680,6 +1747,15 @@
         "node": ">=6"
       }
     },
+    "node_modules/camelcase-css": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmmirror.com/camelcase-css/-/camelcase-css-2.0.1.tgz",
+      "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==",
+      "dev": true,
+      "engines": {
+        "node": ">= 6"
+      }
+    },
     "node_modules/ccount": {
       "version": "2.0.1",
       "resolved": "https://registry.npmmirror.com/ccount/-/ccount-2.0.1.tgz",
@@ -1825,6 +1901,15 @@
         "url": "https://github.com/sponsors/wooorm"
       }
     },
+    "node_modules/commander": {
+      "version": "4.1.1",
+      "resolved": "https://registry.npmmirror.com/commander/-/commander-4.1.1.tgz",
+      "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==",
+      "dev": true,
+      "engines": {
+        "node": ">= 6"
+      }
+    },
     "node_modules/compress-commons": {
       "version": "4.1.2",
       "resolved": "https://registry.npmmirror.com/compress-commons/-/compress-commons-4.1.2.tgz",
@@ -2032,6 +2117,12 @@
         "node": ">=6"
       }
     },
+    "node_modules/didyoumean": {
+      "version": "1.2.2",
+      "resolved": "https://registry.npmmirror.com/didyoumean/-/didyoumean-1.2.2.tgz",
+      "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==",
+      "dev": true
+    },
     "node_modules/diff": {
       "version": "5.2.0",
       "resolved": "https://registry.npmmirror.com/diff/-/diff-5.2.0.tgz",
@@ -2040,6 +2131,12 @@
         "node": ">=0.3.1"
       }
     },
+    "node_modules/dlv": {
+      "version": "1.1.3",
+      "resolved": "https://registry.npmmirror.com/dlv/-/dlv-1.1.3.tgz",
+      "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==",
+      "dev": true
+    },
     "node_modules/doctrine": {
       "version": "3.0.0",
       "resolved": "https://registry.npmmirror.com/doctrine/-/doctrine-3.0.0.tgz",
@@ -2837,6 +2934,15 @@
         "rimraf": "bin.js"
       }
     },
+    "node_modules/function-bind": {
+      "version": "1.1.2",
+      "resolved": "https://registry.npmmirror.com/function-bind/-/function-bind-1.1.2.tgz",
+      "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
+      "dev": true,
+      "funding": {
+        "url": "https://github.com/sponsors/ljharb"
+      }
+    },
     "node_modules/glob": {
       "version": "7.2.3",
       "resolved": "https://registry.npmmirror.com/glob/-/glob-7.2.3.tgz",
@@ -2904,6 +3010,18 @@
         "node": ">=8"
       }
     },
+    "node_modules/hasown": {
+      "version": "2.0.2",
+      "resolved": "https://registry.npmmirror.com/hasown/-/hasown-2.0.2.tgz",
+      "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==",
+      "dev": true,
+      "dependencies": {
+        "function-bind": "^1.1.2"
+      },
+      "engines": {
+        "node": ">= 0.4"
+      }
+    },
     "node_modules/hast-util-from-parse5": {
       "version": "7.1.2",
       "resolved": "https://registry.npmmirror.com/hast-util-from-parse5/-/hast-util-from-parse5-7.1.2.tgz",
@@ -3162,6 +3280,21 @@
         "node": ">=4"
       }
     },
+    "node_modules/is-core-module": {
+      "version": "2.15.1",
+      "resolved": "https://registry.npmmirror.com/is-core-module/-/is-core-module-2.15.1.tgz",
+      "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==",
+      "dev": true,
+      "dependencies": {
+        "hasown": "^2.0.2"
+      },
+      "engines": {
+        "node": ">= 0.4"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/ljharb"
+      }
+    },
     "node_modules/is-extglob": {
       "version": "2.1.1",
       "resolved": "https://registry.npmmirror.com/is-extglob/-/is-extglob-2.1.1.tgz",
@@ -3247,6 +3380,15 @@
         "@pkgjs/parseargs": "^0.11.0"
       }
     },
+    "node_modules/jiti": {
+      "version": "1.21.6",
+      "resolved": "https://registry.npmmirror.com/jiti/-/jiti-1.21.6.tgz",
+      "integrity": "sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==",
+      "dev": true,
+      "bin": {
+        "jiti": "bin/jiti.js"
+      }
+    },
     "node_modules/js-yaml": {
       "version": "4.1.0",
       "resolved": "https://registry.npmmirror.com/js-yaml/-/js-yaml-4.1.0.tgz",
@@ -3408,6 +3550,21 @@
         "immediate": "~3.0.5"
       }
     },
+    "node_modules/lilconfig": {
+      "version": "2.1.0",
+      "resolved": "https://registry.npmmirror.com/lilconfig/-/lilconfig-2.1.0.tgz",
+      "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==",
+      "dev": true,
+      "engines": {
+        "node": ">=10"
+      }
+    },
+    "node_modules/lines-and-columns": {
+      "version": "1.2.4",
+      "resolved": "https://registry.npmmirror.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz",
+      "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==",
+      "dev": true
+    },
     "node_modules/listenercount": {
       "version": "1.0.1",
       "resolved": "https://registry.npmmirror.com/listenercount/-/listenercount-1.0.1.tgz",
@@ -4431,6 +4588,17 @@
       "resolved": "https://registry.npmmirror.com/ms/-/ms-2.1.2.tgz",
       "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
     },
+    "node_modules/mz": {
+      "version": "2.7.0",
+      "resolved": "https://registry.npmmirror.com/mz/-/mz-2.7.0.tgz",
+      "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==",
+      "dev": true,
+      "dependencies": {
+        "any-promise": "^1.0.0",
+        "object-assign": "^4.0.1",
+        "thenify-all": "^1.0.0"
+      }
+    },
     "node_modules/nanoid": {
       "version": "3.3.7",
       "resolved": "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.7.tgz",
@@ -4489,6 +4657,24 @@
         "url": "https://github.com/fb55/nth-check?sponsor=1"
       }
     },
+    "node_modules/object-assign": {
+      "version": "4.1.1",
+      "resolved": "https://registry.npmmirror.com/object-assign/-/object-assign-4.1.1.tgz",
+      "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==",
+      "dev": true,
+      "engines": {
+        "node": ">=0.10.0"
+      }
+    },
+    "node_modules/object-hash": {
+      "version": "3.0.0",
+      "resolved": "https://registry.npmmirror.com/object-hash/-/object-hash-3.0.0.tgz",
+      "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==",
+      "dev": true,
+      "engines": {
+        "node": ">= 6"
+      }
+    },
     "node_modules/once": {
       "version": "1.4.0",
       "resolved": "https://registry.npmmirror.com/once/-/once-1.4.0.tgz",
@@ -4598,6 +4784,12 @@
         "node": ">=8"
       }
     },
+    "node_modules/path-parse": {
+      "version": "1.0.7",
+      "resolved": "https://registry.npmmirror.com/path-parse/-/path-parse-1.0.7.tgz",
+      "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
+      "dev": true
+    },
     "node_modules/path-scurry": {
       "version": "1.11.1",
       "resolved": "https://registry.npmmirror.com/path-scurry/-/path-scurry-1.11.1.tgz",
@@ -4621,9 +4813,9 @@
       "dev": true
     },
     "node_modules/picocolors": {
-      "version": "1.0.1",
-      "resolved": "https://registry.npmmirror.com/picocolors/-/picocolors-1.0.1.tgz",
-      "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew=="
+      "version": "1.1.1",
+      "resolved": "https://registry.npmmirror.com/picocolors/-/picocolors-1.1.1.tgz",
+      "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA=="
     },
     "node_modules/picomatch": {
       "version": "2.3.1",
@@ -4637,6 +4829,15 @@
         "url": "https://github.com/sponsors/jonschlinkert"
       }
     },
+    "node_modules/pify": {
+      "version": "2.3.0",
+      "resolved": "https://registry.npmmirror.com/pify/-/pify-2.3.0.tgz",
+      "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==",
+      "dev": true,
+      "engines": {
+        "node": ">=0.10.0"
+      }
+    },
     "node_modules/pinia": {
       "version": "2.2.2",
       "resolved": "https://registry.npmmirror.com/pinia/-/pinia-2.2.2.tgz",
@@ -4687,6 +4888,15 @@
         }
       }
     },
+    "node_modules/pirates": {
+      "version": "4.0.6",
+      "resolved": "https://registry.npmmirror.com/pirates/-/pirates-4.0.6.tgz",
+      "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==",
+      "dev": true,
+      "engines": {
+        "node": ">= 6"
+      }
+    },
     "node_modules/pkg-types": {
       "version": "1.2.0",
       "resolved": "https://registry.npmmirror.com/pkg-types/-/pkg-types-1.2.0.tgz",
@@ -4699,9 +4909,9 @@
       }
     },
     "node_modules/postcss": {
-      "version": "8.4.41",
-      "resolved": "https://registry.npmmirror.com/postcss/-/postcss-8.4.41.tgz",
-      "integrity": "sha512-TesUflQ0WKZqAvg52PWL6kHgLKP6xB6heTOdoYM0Wt2UHyxNa4K25EZZMgKns3BH1RLVbZCREPpLY0rhnNoHVQ==",
+      "version": "8.4.49",
+      "resolved": "https://registry.npmmirror.com/postcss/-/postcss-8.4.49.tgz",
+      "integrity": "sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==",
       "funding": [
         {
           "type": "opencollective",
@@ -4718,13 +4928,121 @@
       ],
       "dependencies": {
         "nanoid": "^3.3.7",
-        "picocolors": "^1.0.1",
-        "source-map-js": "^1.2.0"
+        "picocolors": "^1.1.1",
+        "source-map-js": "^1.2.1"
       },
       "engines": {
         "node": "^10 || ^12 || >=14"
       }
     },
+    "node_modules/postcss-import": {
+      "version": "15.1.0",
+      "resolved": "https://registry.npmmirror.com/postcss-import/-/postcss-import-15.1.0.tgz",
+      "integrity": "sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==",
+      "dev": true,
+      "dependencies": {
+        "postcss-value-parser": "^4.0.0",
+        "read-cache": "^1.0.0",
+        "resolve": "^1.1.7"
+      },
+      "engines": {
+        "node": ">=14.0.0"
+      },
+      "peerDependencies": {
+        "postcss": "^8.0.0"
+      }
+    },
+    "node_modules/postcss-js": {
+      "version": "4.0.1",
+      "resolved": "https://registry.npmmirror.com/postcss-js/-/postcss-js-4.0.1.tgz",
+      "integrity": "sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==",
+      "dev": true,
+      "dependencies": {
+        "camelcase-css": "^2.0.1"
+      },
+      "engines": {
+        "node": "^12 || ^14 || >= 16"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/postcss/"
+      },
+      "peerDependencies": {
+        "postcss": "^8.4.21"
+      }
+    },
+    "node_modules/postcss-load-config": {
+      "version": "4.0.2",
+      "resolved": "https://registry.npmmirror.com/postcss-load-config/-/postcss-load-config-4.0.2.tgz",
+      "integrity": "sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==",
+      "dev": true,
+      "funding": [
+        {
+          "type": "opencollective",
+          "url": "https://opencollective.com/postcss/"
+        },
+        {
+          "type": "github",
+          "url": "https://github.com/sponsors/ai"
+        }
+      ],
+      "dependencies": {
+        "lilconfig": "^3.0.0",
+        "yaml": "^2.3.4"
+      },
+      "engines": {
+        "node": ">= 14"
+      },
+      "peerDependencies": {
+        "postcss": ">=8.0.9",
+        "ts-node": ">=9.0.0"
+      },
+      "peerDependenciesMeta": {
+        "postcss": {
+          "optional": true
+        },
+        "ts-node": {
+          "optional": true
+        }
+      }
+    },
+    "node_modules/postcss-load-config/node_modules/lilconfig": {
+      "version": "3.1.2",
+      "resolved": "https://registry.npmmirror.com/lilconfig/-/lilconfig-3.1.2.tgz",
+      "integrity": "sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow==",
+      "dev": true,
+      "engines": {
+        "node": ">=14"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/antonk52"
+      }
+    },
+    "node_modules/postcss-nested": {
+      "version": "6.2.0",
+      "resolved": "https://registry.npmmirror.com/postcss-nested/-/postcss-nested-6.2.0.tgz",
+      "integrity": "sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==",
+      "dev": true,
+      "funding": [
+        {
+          "type": "opencollective",
+          "url": "https://opencollective.com/postcss/"
+        },
+        {
+          "type": "github",
+          "url": "https://github.com/sponsors/ai"
+        }
+      ],
+      "dependencies": {
+        "postcss-selector-parser": "^6.1.1"
+      },
+      "engines": {
+        "node": ">=12.0"
+      },
+      "peerDependencies": {
+        "postcss": "^8.2.14"
+      }
+    },
     "node_modules/postcss-selector-parser": {
       "version": "6.1.2",
       "resolved": "https://registry.npmmirror.com/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz",
@@ -4738,6 +5056,12 @@
         "node": ">=4"
       }
     },
+    "node_modules/postcss-value-parser": {
+      "version": "4.2.0",
+      "resolved": "https://registry.npmmirror.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz",
+      "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==",
+      "dev": true
+    },
     "node_modules/prelude-ls": {
       "version": "1.2.1",
       "resolved": "https://registry.npmmirror.com/prelude-ls/-/prelude-ls-1.2.1.tgz",
@@ -4822,6 +5146,15 @@
         }
       ]
     },
+    "node_modules/read-cache": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmmirror.com/read-cache/-/read-cache-1.0.0.tgz",
+      "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==",
+      "dev": true,
+      "dependencies": {
+        "pify": "^2.3.0"
+      }
+    },
     "node_modules/readable-stream": {
       "version": "3.6.2",
       "resolved": "https://registry.npmmirror.com/readable-stream/-/readable-stream-3.6.2.tgz",
@@ -4965,6 +5298,23 @@
         "url": "https://opencollective.com/unified"
       }
     },
+    "node_modules/resolve": {
+      "version": "1.22.8",
+      "resolved": "https://registry.npmmirror.com/resolve/-/resolve-1.22.8.tgz",
+      "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==",
+      "dev": true,
+      "dependencies": {
+        "is-core-module": "^2.13.0",
+        "path-parse": "^1.0.7",
+        "supports-preserve-symlinks-flag": "^1.0.0"
+      },
+      "bin": {
+        "resolve": "bin/resolve"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/ljharb"
+      }
+    },
     "node_modules/resolve-from": {
       "version": "4.0.0",
       "resolved": "https://registry.npmmirror.com/resolve-from/-/resolve-from-4.0.0.tgz",
@@ -5220,9 +5570,9 @@
       "integrity": "sha512-FJF5jgdfvoKn1MAKSdGs33bIqLi3LmsgVTliuX6iITj834F+JRQZN90Z93yql8h0K2t0RwDPBmxwlbZfDcxNZA=="
     },
     "node_modules/source-map-js": {
-      "version": "1.2.0",
-      "resolved": "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.2.0.tgz",
-      "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==",
+      "version": "1.2.1",
+      "resolved": "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.2.1.tgz",
+      "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==",
       "engines": {
         "node": ">=0.10.0"
       }
@@ -5359,6 +5709,72 @@
         "url": "https://github.com/sponsors/sindresorhus"
       }
     },
+    "node_modules/sucrase": {
+      "version": "3.35.0",
+      "resolved": "https://registry.npmmirror.com/sucrase/-/sucrase-3.35.0.tgz",
+      "integrity": "sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==",
+      "dev": true,
+      "dependencies": {
+        "@jridgewell/gen-mapping": "^0.3.2",
+        "commander": "^4.0.0",
+        "glob": "^10.3.10",
+        "lines-and-columns": "^1.1.6",
+        "mz": "^2.7.0",
+        "pirates": "^4.0.1",
+        "ts-interface-checker": "^0.1.9"
+      },
+      "bin": {
+        "sucrase": "bin/sucrase",
+        "sucrase-node": "bin/sucrase-node"
+      },
+      "engines": {
+        "node": ">=16 || 14 >=14.17"
+      }
+    },
+    "node_modules/sucrase/node_modules/brace-expansion": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-2.0.1.tgz",
+      "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+      "dev": true,
+      "dependencies": {
+        "balanced-match": "^1.0.0"
+      }
+    },
+    "node_modules/sucrase/node_modules/glob": {
+      "version": "10.4.5",
+      "resolved": "https://registry.npmmirror.com/glob/-/glob-10.4.5.tgz",
+      "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==",
+      "dev": true,
+      "dependencies": {
+        "foreground-child": "^3.1.0",
+        "jackspeak": "^3.1.2",
+        "minimatch": "^9.0.4",
+        "minipass": "^7.1.2",
+        "package-json-from-dist": "^1.0.0",
+        "path-scurry": "^1.11.1"
+      },
+      "bin": {
+        "glob": "dist/esm/bin.mjs"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/isaacs"
+      }
+    },
+    "node_modules/sucrase/node_modules/minimatch": {
+      "version": "9.0.5",
+      "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-9.0.5.tgz",
+      "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
+      "dev": true,
+      "dependencies": {
+        "brace-expansion": "^2.0.1"
+      },
+      "engines": {
+        "node": ">=16 || 14 >=14.17"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/isaacs"
+      }
+    },
     "node_modules/supports-color": {
       "version": "7.2.0",
       "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz",
@@ -5371,6 +5787,18 @@
         "node": ">=8"
       }
     },
+    "node_modules/supports-preserve-symlinks-flag": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmmirror.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
+      "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
+      "dev": true,
+      "engines": {
+        "node": ">= 0.4"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/ljharb"
+      }
+    },
     "node_modules/synckit": {
       "version": "0.9.1",
       "resolved": "https://registry.npmmirror.com/synckit/-/synckit-0.9.1.tgz",
@@ -5393,6 +5821,43 @@
       "integrity": "sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==",
       "dev": true
     },
+    "node_modules/tailwindcss": {
+      "version": "3.4.15",
+      "resolved": "https://registry.npmmirror.com/tailwindcss/-/tailwindcss-3.4.15.tgz",
+      "integrity": "sha512-r4MeXnfBmSOuKUWmXe6h2CcyfzJCEk4F0pptO5jlnYSIViUkVmsawj80N5h2lO3gwcmSb4n3PuN+e+GC1Guylw==",
+      "dev": true,
+      "dependencies": {
+        "@alloc/quick-lru": "^5.2.0",
+        "arg": "^5.0.2",
+        "chokidar": "^3.6.0",
+        "didyoumean": "^1.2.2",
+        "dlv": "^1.1.3",
+        "fast-glob": "^3.3.2",
+        "glob-parent": "^6.0.2",
+        "is-glob": "^4.0.3",
+        "jiti": "^1.21.6",
+        "lilconfig": "^2.1.0",
+        "micromatch": "^4.0.8",
+        "normalize-path": "^3.0.0",
+        "object-hash": "^3.0.0",
+        "picocolors": "^1.1.1",
+        "postcss": "^8.4.47",
+        "postcss-import": "^15.1.0",
+        "postcss-js": "^4.0.1",
+        "postcss-load-config": "^4.0.2",
+        "postcss-nested": "^6.2.0",
+        "postcss-selector-parser": "^6.1.2",
+        "resolve": "^1.22.8",
+        "sucrase": "^3.35.0"
+      },
+      "bin": {
+        "tailwind": "lib/cli.js",
+        "tailwindcss": "lib/cli.js"
+      },
+      "engines": {
+        "node": ">=14.0.0"
+      }
+    },
     "node_modules/tar-stream": {
       "version": "2.2.0",
       "resolved": "https://registry.npmmirror.com/tar-stream/-/tar-stream-2.2.0.tgz",
@@ -5414,6 +5879,27 @@
       "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==",
       "dev": true
     },
+    "node_modules/thenify": {
+      "version": "3.3.1",
+      "resolved": "https://registry.npmmirror.com/thenify/-/thenify-3.3.1.tgz",
+      "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==",
+      "dev": true,
+      "dependencies": {
+        "any-promise": "^1.0.0"
+      }
+    },
+    "node_modules/thenify-all": {
+      "version": "1.6.0",
+      "resolved": "https://registry.npmmirror.com/thenify-all/-/thenify-all-1.6.0.tgz",
+      "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==",
+      "dev": true,
+      "dependencies": {
+        "thenify": ">= 3.1.0 < 4"
+      },
+      "engines": {
+        "node": ">=0.8"
+      }
+    },
     "node_modules/tinymce": {
       "version": "5.10.9",
       "resolved": "https://registry.npmmirror.com/tinymce/-/tinymce-5.10.9.tgz",
@@ -5481,6 +5967,12 @@
         "url": "https://github.com/sponsors/wooorm"
       }
     },
+    "node_modules/ts-interface-checker": {
+      "version": "0.1.13",
+      "resolved": "https://registry.npmmirror.com/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz",
+      "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==",
+      "dev": true
+    },
     "node_modules/tslib": {
       "version": "2.3.0",
       "resolved": "https://registry.npmmirror.com/tslib/-/tslib-2.3.0.tgz",
@@ -6261,6 +6753,18 @@
       "resolved": "https://registry.npmmirror.com/xmlchars/-/xmlchars-2.2.0.tgz",
       "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw=="
     },
+    "node_modules/yaml": {
+      "version": "2.6.1",
+      "resolved": "https://registry.npmmirror.com/yaml/-/yaml-2.6.1.tgz",
+      "integrity": "sha512-7r0XPzioN/Q9kXBro/XPnA6kznR73DHq+GXh5ON7ZozRO6aMjbmiBuKste2wslTFkC5d1dw0GooOCepZXJ2SAg==",
+      "dev": true,
+      "bin": {
+        "yaml": "bin.mjs"
+      },
+      "engines": {
+        "node": ">= 14"
+      }
+    },
     "node_modules/yocto-queue": {
       "version": "0.1.0",
       "resolved": "https://registry.npmmirror.com/yocto-queue/-/yocto-queue-0.1.0.tgz",

+ 1 - 0
package.json

@@ -58,6 +58,7 @@
     "prettier": "~3.3.3",
     "rimraf": "~5.0.10",
     "sass": "~1.77.8",
+    "tailwindcss": "^3.4.15",
     "unplugin-vue-components": "~0.27.4",
     "vite": "~5.4.2",
     "vite-plugin-compression": "~0.5.1",

+ 3 - 1
postcss.config.js

@@ -1,3 +1,5 @@
 export default {
-  plugins: {}
+  plugins: {
+    tailwindcss: {}
+  }
 };

+ 7 - 2
src/components/CommonPage/SimpleTable.vue

@@ -8,13 +8,18 @@
     highlight-current-row
     :pagination="false"
     :tools="false"
-  ></ele-pro-table>
+  >
+    <template v-for="(val, key) in slotArray" v-slot:[key]="{ row }">
+      <slot :name="key" :row="row"></slot>
+    </template>
+  </ele-pro-table>
 </template>
 
 <script setup>
-  import { ref, reactive, nextTick } from 'vue';
+  import { ref, reactive, nextTick, useSlots } from 'vue';
   import { pagePosts } from '@/api/system/post';
 
+  const slotArray = useSlots();
   const props = defineProps({
     columns: {
       type: Array,

+ 2 - 0
src/main.js

@@ -1,5 +1,7 @@
 import { createApp } from 'vue';
 import App from './App.vue';
+// 引入 tailwind.css 一定要写在所有其它样式之前
+import './styles/tailwind.css';
 import store from './store';
 import router from './router';
 import permission from './utils/permission';

+ 6 - 0
src/styles/index.scss

@@ -57,6 +57,12 @@ body {
     padding-left: 20px;
   }
 }
+//订单详情
+.order-detail {
+  .el-step.is-center .el-step__description {
+    padding: 0;
+  }
+}
 
 /* 级联选择器增加高度 */
 .ele-popper-higher .el-cascader-menu__wrap.el-scrollbar__wrap {

+ 3 - 0
src/styles/tailwind.css

@@ -0,0 +1,3 @@
+@tailwind base;
+@tailwind components;
+@tailwind utilities;

+ 4 - 4
src/views/recycleOrder/components/order-amount.vue

@@ -1,19 +1,19 @@
 <template>
   <div class="recycle-order-number">
-    <div class="comon-text">
+    <div class="common-text">
       <el-text>预估书款:</el-text>
       <el-text type="danger">¥2.9</el-text>
     </div>
-    <div class="comon-text">
+    <div class="common-text">
       <el-text>审核书款:</el-text>
       <el-text v-if="!row.deliveryCode">待核算</el-text>
       <el-text v-else>罗**(189****1233)</el-text>
     </div>
-    <div class="comon-text">
+    <div class="common-text">
       <el-text>订单类型:</el-text>
       <el-text>普通订单</el-text>
     </div>
-    <div class="comon-text">
+    <div class="common-text">
       <el-text>取件方式:</el-text>
       <el-text>上门取件</el-text>
     </div>

+ 5 - 5
src/views/recycleOrder/components/order-customer.vue

@@ -1,23 +1,23 @@
 <template>
   <div class="recycle-order-number">
-    <div class="comon-text">
+    <div class="common-text">
       <el-text>用户名:</el-text>
       <el-text>77184923212132138219312323</el-text>
     </div>
-    <div class="comon-text">
+    <div class="common-text">
       <el-text>发件人:</el-text>
       <el-text v-if="row.deliveryCode">暂无信息</el-text>
       <el-text v-else>罗**(189****1233)</el-text>
     </div>
-    <div class="comon-text">
+    <div class="common-text">
       <el-text>省市区:</el-text>
       <el-text>广东省/广州市/白云区</el-text>
     </div>
-    <div class="comon-text">
+    <div class="common-text">
       <el-text>地址:</el-text>
       <el-text>谭中街道文昌路2号科技大学文昌路校区宿舍B区</el-text>
     </div>
-    <div class="comon-text">
+    <div class="common-text">
       <el-text>标签:</el-text>
       <el-text>暂无信息</el-text>
     </div>

+ 5 - 5
src/views/recycleOrder/components/order-number.vue

@@ -1,23 +1,23 @@
 <template>
   <div class="recycle-order-number">
-    <div class="comon-text">
+    <div class="common-text">
       <el-text>订单号:</el-text>
       <el-text type="danger">7718492</el-text>
     </div>
-    <div class="comon-text">
+    <div class="common-text">
       <el-text>快递单号:</el-text>
       <el-text v-if="!row.deliveryCode">暂无信息</el-text>
       <el-text v-else type="success">SF23930090911YHD</el-text>
     </div>
-    <div class="comon-text">
+    <div class="common-text">
       <el-text>快递公司:</el-text>
       <el-text type="success">顺丰快递</el-text>
     </div>
-    <div class="comon-text">
+    <div class="common-text">
       <el-text>订单来源:</el-text>
       <el-text>微信小程序</el-text>
     </div>
-    <div class="comon-text">
+    <div class="common-text">
       <el-text>订单备注:</el-text>
       <el-text>京东</el-text>
     </div>

+ 3 - 3
src/views/recycleOrder/components/order-time.vue

@@ -1,14 +1,14 @@
 <template>
   <div class="recycle-order-number">
-    <div class="comon-text">
+    <div class="common-text">
       <el-text>建单:</el-text>
       <el-text>2024-11-08 21:09:19</el-text>
     </div>
-    <div class="comon-text">
+    <div class="common-text">
       <el-text>提交:</el-text>
       <el-text>2024-11-08 21:09:19</el-text>
     </div>
-    <div class="comon-text">
+    <div class="common-text">
       <el-text>预约:</el-text>
       <el-text>2024-11-08 21:09:19</el-text>
     </div>

+ 40 - 4
src/views/recycleOrder/detail/index.vue

@@ -1,5 +1,41 @@
 <template>
-    <div class="order-detail">
-        详情
-    </div>
-</template>
+  <ele-page class="order-detail">
+    <ele-card class="order-status" header="订单状态">
+      <orderStatus />
+    </ele-card>
+    <ele-card
+      class="order-base"
+      header="订单基本信息"
+      :body-style="{ paddingTop: '0' }"
+    >
+      <orderBaseInfo />
+    </ele-card>
+    <ele-card
+      class="order-book-list"
+      header="图书清单"
+      :body-style="{ paddingTop: '0' }"
+    >
+      <orderBookList />
+    </ele-card>
+
+    <ele-card class="order-service" header="订单服务">
+      <el-tag size="large" style="margin-right: 20px">免费退回</el-tag>
+      <el-tag size="large" style="margin-right: 20px">24小时验</el-tag>
+      <el-tag size="large">急速打款</el-tag>
+    </ele-card>
+
+    <ele-card class="order-note" header="审核计价说明">
+      品相良好:按原始回收折扣计价;品相一般:按原始回收折扣*0.7计价;品相极差:不收。
+    </ele-card>
+    <ele-card class="order-freight" header="物流动态">
+      <orderFreightStatus />
+    </ele-card>
+  </ele-page>
+</template>
+
+<script setup>
+  import orderStatus from '@/views/recycleOrder/detail/order-status.vue';
+  import orderBaseInfo from '@/views/recycleOrder/detail/order-base-info.vue';
+  import orderFreightStatus from '@/views/recycleOrder/detail/order-freight-status.vue';
+  import orderBookList from '@/views/recycleOrder/detail/order-book-list.vue'
+</script>

+ 94 - 0
src/views/recycleOrder/detail/order-base-info.vue

@@ -0,0 +1,94 @@
+<template>
+  <div class="base-info">
+    <ele-pro-table
+      ref="tableRef"
+      row-key="userId"
+      :columns="columns"
+      :datasource="datasource"
+      :tools="false"
+      :pagination="false"
+    >
+    </ele-pro-table>
+    <el-row :gutter="12" style="padding:16px 10px;padding-bottom:0">
+      <el-col :span="8">
+        <div class="common-text">
+          <el-text>物流类型:</el-text>
+          <el-text>平台物流</el-text>
+        </div>
+        <div class="common-text">
+          <el-text>快递单号:</el-text>
+          <el-text>QWD00090342255</el-text>
+        </div>
+        <div class="common-text">
+          <el-text>快递公司:</el-text>
+          <el-text>京东物流</el-text>
+        </div>
+        <div class="common-text">
+          <el-text>预约时间:</el-text>
+          <el-text>2024-07-27 17:00</el-text>
+        </div>
+      </el-col>
+      <el-col :span="8">
+        <div class="common-text">
+          <el-text>发件人:</el-text>
+          <el-text>杜**(ID:8854534)</el-text>
+        </div>
+        <div class="common-text">
+          <el-text>电 话:</el-text>
+          <el-text>178****8812</el-text>
+        </div>
+        <div class="common-text">
+          <el-text>地 址:</el-text>
+          <el-text>河南省/郑州市/中牟县/青年西路西坛巷</el-text>
+        </div>
+        <div class="common-text">
+          <el-text>备 注:</el-text>
+          <el-text>暂无信息</el-text>
+        </div>
+      </el-col>
+      <el-col :span="8">
+        <div class="common-text">
+          <el-text>收货仓库:</el-text>
+          <el-text>河南仓-谢雪武</el-text>
+        </div>
+        <div class="common-text">
+          <el-text>收 件 人:</el-text>
+          <el-text>谢雪武</el-text>
+        </div>
+        <div class="common-text">
+          <el-text>电  话:</el-text>
+          <el-text>18638621175</el-text>
+        </div>
+        <div class="common-text">
+          <el-text>地  址:</el-text>
+          <el-text>河南省/鹤壁市/浚县/黄河路南段 益民面业院内 4号仓库</el-text>
+        </div>
+      </el-col>
+    </el-row>
+  </div>
+</template>
+
+<script setup>
+  import { ref, reactive } from 'vue';
+  const datasource = reactive([
+    {
+      orderNumber: '123456789',
+      orderSource: '微信小程序',
+      user: '张三',
+      estimatedPayment: '¥12345.00',
+      reviewedPayment: '¥12345.00',
+      orderTime: '2022-08-09 16:27:00',
+      createTime: '2022-08-13 16:27:00',
+      transactionStatus: '已完成'
+    }
+  ]);
+  const columns = ref([
+    { label: '订单编号', prop: 'orderNumber' },
+    { label: '订单来源', prop: 'orderSource' },
+    { label: '用户', prop: 'user' },
+    { label: '预计书款', prop: 'estimatedPayment' },
+    { label: '审核书款', prop: 'reviewedPayment' },
+    { label: '下单时间', prop: 'orderTime' },
+    { label: '交易状态', prop: 'transactionStatus' }
+  ]);
+</script>

+ 74 - 0
src/views/recycleOrder/detail/order-book-list.vue

@@ -0,0 +1,74 @@
+<template>
+  <SimpleTable :columns="columns" border>
+    <template #baseInfo="{ row }"> </template>
+    <template #action="{ row }">
+      <div class="action-btns">
+        <el-button class="mb-10" color="#4f4f4f" @click="">审核图片</el-button>
+        <el-button class="mb-10" color="#a4adb3" @click="">查看当当</el-button>
+        <el-button class="mb-10" color="#e99d42" @click="">回收日志</el-button>
+        <el-button class="mb-10" color="#f27606" @click="">查看淘宝</el-button>
+        <el-button color="#0f7dc7" @click="">售价日志</el-button>
+        <el-button color="#399420" @click="">查看豆瓣</el-button>
+      </div>
+    </template>
+    <template #auditInfo="{ row }">
+      <div class="audit-info flex">
+        <el-radio-group v-model="row.auditInfo" style="width: 120px">
+          <el-radio :value="1">品相良好</el-radio>
+          <el-radio :value="2">品相一般</el-radio>
+          <el-radio :value="3">品相极差</el-radio>
+        </el-radio-group>
+        <el-input
+          v-model="row.textarea"
+          style="width: 170px"
+          :rows="4"
+          type="textarea"
+          placeholder="请输入品相极差的原因"
+        />
+      </div>
+    </template>
+  </SimpleTable>
+</template>
+
+<script setup>
+  import { ref, reactive } from 'vue';
+  import SimpleTable from '@/components/CommonPage/SimpleTable.vue';
+
+  const columns = ref([
+    {
+      type: 'index',
+      columnKey: 'index',
+      width: 60,
+      align: 'center'
+    },
+    {
+      label: '信息',
+      prop: 'baseInfo',
+      slot: 'baseInfo',
+      minWidth: 500,
+      align: 'center'
+    },
+    {
+      label: '操作',
+      prop: 'action',
+      slot: 'action',
+      width: 220,
+      align: 'center'
+    },
+    { label: '数量', prop: 'number', minWidth: 90, align: 'center' },
+    {
+      label: '审核信息',
+      prop: 'auditInfo',
+      slot: 'auditInfo',
+      align: 'center',
+      minWidth: 317
+    },
+    { label: '审核金额', prop: 'reviewedPayment', align: 'center', minWidth: 120 }
+  ]);
+</script>
+
+<style lang="scss">
+  .mb-10 {
+    margin-bottom: 7px;
+  }
+</style>

+ 58 - 0
src/views/recycleOrder/detail/order-freight-status.vue

@@ -0,0 +1,58 @@
+<template>
+  <el-timeline>
+    <el-timeline-item
+      v-for="(item, index) in recordsList"
+      :key="index"
+      :timestamp="item.time"
+    >
+      <div>{{ item.label }}</div>
+      {{ item.desc }}
+    </el-timeline-item>
+  </el-timeline>
+</template>
+
+<script setup>
+  import { reactive } from 'vue';
+  const recordsList = reactive([
+    {
+      label: '妥投',
+      time: '2024/07/28 07:35:36',
+      desc: '您的快件已由本人签收,感谢您使用京东物流,期待再次为您服务。'
+    },
+    {
+      label: '妥投',
+      time: '2024/07/28 07:35:36',
+      desc: '您的快件已由本人签收,感谢您使用京东物流,期待再次为您服务。'
+    },
+    {
+      label: '妥投',
+      time: '2024/07/28 07:35:36',
+      desc: '您的快件已由本人签收,感谢您使用京东物流,期待再次为您服务。'
+    },
+    {
+      label: '妥投',
+      time: '2024/07/28 07:35:36',
+      desc: '您的快件已由本人签收,感谢您使用京东物流,期待再次为您服务。'
+    },
+    {
+      label: '妥投',
+      time: '2024/07/28 07:35:36',
+      desc: '您的快件已由本人签收,感谢您使用京东物流,期待再次为您服务。'
+    },
+    {
+      label: '妥投',
+      time: '2024/07/28 07:35:36',
+      desc: '您的快件已由本人签收,感谢您使用京东物流,期待再次为您服务。'
+    }
+  ]);
+  const props = defineProps({
+    records: {
+      type: Array,
+      default: () => []
+    },
+    title: {
+      type: String,
+      default: ''
+    }
+  });
+</script>

+ 30 - 0
src/views/recycleOrder/detail/order-status.vue

@@ -0,0 +1,30 @@
+<template>
+    <el-steps
+      style="width: 100%"
+      :active="active"
+      align-center
+      finish-status="success"
+    >
+      <el-step v-for="item in stepList" :title="item.label">
+        <template #description>
+          <div>{{ item.time }}</div>
+          <div>{{ item.createdBy }}</div>
+        </template>
+      </el-step>
+    </el-steps>
+</template>
+
+<script setup>
+  import { ref, reactive } from 'vue';
+  const active = ref(6);
+  const stepList = reactive([
+    { label: '创建', time: '2024-06-05 15:00:00', createdBy: '微信用户' },
+    { label: '下单', time: '2024-06-05 15:00:00', createdBy: '微信用户' },
+    { label: '初审', time: '2024-06-05 15:00:00', createdBy: 'system' },
+    { label: '快递取书', time: '2024-06-05 15:00:00', createdBy: 'system' },
+    { label: '快递签收', time: '2024-06-05 15:00:00', createdBy: 'system' },
+    { label: '仓库收货', time: '2024-06-05 15:00:00', createdBy: '喷喷喷' },
+    { label: '到货审核', time: '', createdBy: '' },
+    { label: '支付书款(完成)', time: '', createdBy: '' }
+  ]);
+</script>

+ 13 - 25
src/views/recycleOrder/urgentRecycleAudit/index.vue

@@ -4,7 +4,7 @@
       <el-button
         type="warning"
         plain
-        v-permission="'recycleOrder:awaitDelivery:batchAudit'"
+        v-permission="'recycleOrder:urgentRecycleAudit:batchAudit'"
         @click="handleBatchAudit"
       >
         批量初审
@@ -12,7 +12,7 @@
       <el-button
         type="success"
         plain
-        v-permission="'recycleOrder:awaitDelivery:batchReceive'"
+        v-permission="'recycleOrder:urgentRecycleAudit:batchReceive'"
         @click="handleBatchReceive()"
       >
         批量确认收货
@@ -24,7 +24,7 @@
         <el-button
           type="success"
           link
-          v-permission="'recycleOrder:awaitDelivery:detail'"
+          v-permission="'recycleOrder:urgentRecycleAudit:detail'"
           @click="toOrderDetail(row)"
         >
           [订单详情]
@@ -32,7 +32,7 @@
         <el-button
           type="warning"
           link
-          v-permission="'recycleOrder:awaitDelivery:log'"
+          v-permission="'recycleOrder:urgentRecycleAudit:log'"
           @click="openOrderLog(row)"
         >
           [订单日志]
@@ -40,7 +40,7 @@
         <el-button
           type="primary"
           link
-          v-permission="'recycleOrder:awaitDelivery:fallback'"
+          v-permission="'recycleOrder:urgentRecycleAudit:fallback'"
           @click="fallbackOrder(row)"
         >
           [回退状态]
@@ -48,7 +48,7 @@
         <el-button
           type="success"
           link
-          v-permission="'recycleOrder:awaitDelivery:receive'"
+          v-permission="'recycleOrder:urgentRecycleAudit:receive'"
           @click="handleBatchReceive(row)"
         >
           [确认收货]
@@ -64,7 +64,7 @@
         <el-button
           type="warning"
           link
-          v-permission="'recycleOrder:awaitDelivery:userTag'"
+          v-permission="'recycleOrder:urgentRecycleAudit:userTag'"
           @click="openEditUserTag(row)"
         >
           [用户标签]
@@ -72,7 +72,7 @@
         <el-button
           type="success"
           link
-          v-permission="'recycleOrder:search:sendSMS'"
+          v-permission="'recycleOrder:urgentRecycleAudit:sendSMS'"
           @click="handleSendSMS(row)"
         >
           [推送短信]
@@ -80,7 +80,7 @@
         <el-button
           type="info"
           link
-          v-permission="'recycleOrder:search:smsLog'"
+          v-permission="'recycleOrder:urgentRecycleAudit:smsLog'"
           @click="handleSmsLog(row)"
         >
           [短信记录]
@@ -116,7 +116,7 @@
   //短信记录
   import orderSmsLog from '@/views/recycleOrder/components/order-sms-log.vue';
 
-  defineOptions({ name: 'recycleOrderawaitDelivery' });
+  defineOptions({ name: 'recycleOrderUrgentRecycleAudit' });
 
   let router = useRouter();
   /** 页面组件实例 */
@@ -125,8 +125,8 @@
   const pageConfig = reactive({
     pageUrl: '',
     exportUrl: '',
-    fileName: '待签收订单',
-    cacheKey: 'awaitDeliveryTable'
+    fileName: '回收催审核',
+    cacheKey: 'urgentRecycleAuditTable'
   });
 
   //批量初审
@@ -137,7 +137,7 @@
     });
   }
 
-  //批量取消订单
+  //确认收货
   function handleBatchReceive(row) {
     pageRef.value?.operatBatch({
       title: '确认收货?',
@@ -154,8 +154,6 @@
   //订单日志
   const orderLogRef = ref(null);
   function openOrderLog(row) {
-    console.log(row, orderLogRef.value, 'row');
-
     orderLogRef.value?.handleOpen(row);
   }
 
@@ -185,21 +183,11 @@
   function fallbackOrder(row) {
     messageBoxConfirm({ message: '确认回退状态?', url: '', row });
   }
-  //确认收货
-  function materialPickup(row) {
-    messageBoxConfirm({ message: '确认收货?', url: '', row });
-  }
-  //申请拦截退回
-  function applyForInterception(row) {
-    messageBoxConfirm({ message: '确认申请拦截退回?', url: '', row });
-  }
-
   //推送短信
   const smsRef = ref(null);
   function handleSendSMS(row) {
     smsRef.value?.handleOpen(row);
   }
-
   //短信记录
   const smsLogRef = ref(null);
   function handleSmsLog(row) {

+ 7 - 0
tailwind.config.js

@@ -0,0 +1,7 @@
+export default {
+  content: ['./index.html', './src/**/*.{vue,js,ts,jsx,tsx}'],
+  theme: {
+    extend: {}
+  },
+  plugins: []
+};