瀏覽代碼

Merge branch 'master' of http://47.101.159.18:3000/Muchinfo/MTP2.0_WEB

huangbin 4 年之前
父節點
當前提交
e05fae8e39

+ 228 - 228
package-lock.json

@@ -1828,6 +1828,160 @@
         "tslint": "^5.20.1",
         "webpack": "^4.0.0",
         "yorkie": "^2.0.0"
+      },
+      "dependencies": {
+        "ansi-styles": {
+          "version": "4.3.0",
+          "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+          "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "color-convert": "^2.0.1"
+          }
+        },
+        "chalk": {
+          "version": "4.1.1",
+          "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz",
+          "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "ansi-styles": "^4.1.0",
+            "supports-color": "^7.1.0"
+          }
+        },
+        "color-convert": {
+          "version": "2.0.1",
+          "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+          "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "color-name": "~1.1.4"
+          }
+        },
+        "cosmiconfig": {
+          "version": "6.0.0",
+          "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz",
+          "integrity": "sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "@types/parse-json": "^4.0.0",
+            "import-fresh": "^3.1.0",
+            "parse-json": "^5.0.0",
+            "path-type": "^4.0.0",
+            "yaml": "^1.7.2"
+          }
+        },
+        "deepmerge": {
+          "version": "4.2.2",
+          "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz",
+          "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==",
+          "dev": true,
+          "optional": true
+        },
+        "fork-ts-checker-webpack-plugin-v5": {
+          "version": "npm:fork-ts-checker-webpack-plugin@5.2.1",
+          "resolved": "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-5.2.1.tgz",
+          "integrity": "sha512-SVi+ZAQOGbtAsUWrZvGzz38ga2YqjWvca1pXQFUArIVXqli0lLoDQ8uS0wg0kSpcwpZmaW5jVCZXQebkyUQSsw==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "@babel/code-frame": "^7.8.3",
+            "@types/json-schema": "^7.0.5",
+            "chalk": "^4.1.0",
+            "cosmiconfig": "^6.0.0",
+            "deepmerge": "^4.2.2",
+            "fs-extra": "^9.0.0",
+            "memfs": "^3.1.2",
+            "minimatch": "^3.0.4",
+            "schema-utils": "2.7.0",
+            "semver": "^7.3.2",
+            "tapable": "^1.0.0"
+          }
+        },
+        "fs-extra": {
+          "version": "9.1.0",
+          "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz",
+          "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "at-least-node": "^1.0.0",
+            "graceful-fs": "^4.2.0",
+            "jsonfile": "^6.0.1",
+            "universalify": "^2.0.0"
+          }
+        },
+        "has-flag": {
+          "version": "4.0.0",
+          "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+          "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+          "dev": true,
+          "optional": true
+        },
+        "jsonfile": {
+          "version": "6.1.0",
+          "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz",
+          "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "graceful-fs": "^4.1.6",
+            "universalify": "^2.0.0"
+          }
+        },
+        "lru-cache": {
+          "version": "6.0.0",
+          "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
+          "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "yallist": "^4.0.0"
+          }
+        },
+        "schema-utils": {
+          "version": "2.7.0",
+          "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.0.tgz",
+          "integrity": "sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "@types/json-schema": "^7.0.4",
+            "ajv": "^6.12.2",
+            "ajv-keywords": "^3.4.1"
+          }
+        },
+        "semver": {
+          "version": "7.3.5",
+          "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz",
+          "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "lru-cache": "^6.0.0"
+          }
+        },
+        "supports-color": {
+          "version": "7.2.0",
+          "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+          "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "has-flag": "^4.0.0"
+          }
+        },
+        "universalify": {
+          "version": "2.0.0",
+          "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz",
+          "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==",
+          "dev": true,
+          "optional": true
+        }
       }
     },
     "@vue/cli-plugin-vuex": {
@@ -1900,6 +2054,37 @@
         "webpack-merge": "^4.2.2"
       },
       "dependencies": {
+        "ansi-styles": {
+          "version": "4.3.0",
+          "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+          "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "color-convert": "^2.0.1"
+          }
+        },
+        "chalk": {
+          "version": "4.1.1",
+          "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz",
+          "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "ansi-styles": "^4.1.0",
+            "supports-color": "^7.1.0"
+          }
+        },
+        "color-convert": {
+          "version": "2.0.1",
+          "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+          "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "color-name": "~1.1.4"
+          }
+        },
         "file-loader": {
           "version": "4.3.0",
           "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-4.3.0.tgz",
@@ -1909,6 +2094,49 @@
             "loader-utils": "^1.2.3",
             "schema-utils": "^2.5.0"
           }
+        },
+        "has-flag": {
+          "version": "4.0.0",
+          "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+          "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+          "dev": true,
+          "optional": true
+        },
+        "supports-color": {
+          "version": "7.2.0",
+          "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+          "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "has-flag": "^4.0.0"
+          }
+        },
+        "vue-loader-v16": {
+          "version": "npm:vue-loader@16.2.0",
+          "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-16.2.0.tgz",
+          "integrity": "sha512-TitGhqSQ61RJljMmhIGvfWzJ2zk9m1Qug049Ugml6QP3t0e95o0XJjk29roNEiPKJQBEi8Ord5hFuSuELzSp8Q==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "chalk": "^4.1.0",
+            "hash-sum": "^2.0.0",
+            "loader-utils": "^2.0.0"
+          },
+          "dependencies": {
+            "loader-utils": {
+              "version": "2.0.0",
+              "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz",
+              "integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==",
+              "dev": true,
+              "optional": true,
+              "requires": {
+                "big.js": "^5.2.2",
+                "emojis-list": "^3.0.0",
+                "json5": "^2.1.2"
+              }
+            }
+          }
         }
       }
     },
@@ -6104,160 +6332,6 @@
         "worker-rpc": "^0.1.0"
       }
     },
-    "fork-ts-checker-webpack-plugin-v5": {
-      "version": "npm:fork-ts-checker-webpack-plugin@5.2.1",
-      "resolved": "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-5.2.1.tgz",
-      "integrity": "sha512-SVi+ZAQOGbtAsUWrZvGzz38ga2YqjWvca1pXQFUArIVXqli0lLoDQ8uS0wg0kSpcwpZmaW5jVCZXQebkyUQSsw==",
-      "dev": true,
-      "optional": true,
-      "requires": {
-        "@babel/code-frame": "^7.8.3",
-        "@types/json-schema": "^7.0.5",
-        "chalk": "^4.1.0",
-        "cosmiconfig": "^6.0.0",
-        "deepmerge": "^4.2.2",
-        "fs-extra": "^9.0.0",
-        "memfs": "^3.1.2",
-        "minimatch": "^3.0.4",
-        "schema-utils": "2.7.0",
-        "semver": "^7.3.2",
-        "tapable": "^1.0.0"
-      },
-      "dependencies": {
-        "ansi-styles": {
-          "version": "4.3.0",
-          "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
-          "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "color-convert": "^2.0.1"
-          }
-        },
-        "chalk": {
-          "version": "4.1.0",
-          "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz",
-          "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==",
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "ansi-styles": "^4.1.0",
-            "supports-color": "^7.1.0"
-          }
-        },
-        "color-convert": {
-          "version": "2.0.1",
-          "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
-          "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "color-name": "~1.1.4"
-          }
-        },
-        "cosmiconfig": {
-          "version": "6.0.0",
-          "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz",
-          "integrity": "sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==",
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "@types/parse-json": "^4.0.0",
-            "import-fresh": "^3.1.0",
-            "parse-json": "^5.0.0",
-            "path-type": "^4.0.0",
-            "yaml": "^1.7.2"
-          }
-        },
-        "deepmerge": {
-          "version": "4.2.2",
-          "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz",
-          "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==",
-          "dev": true,
-          "optional": true
-        },
-        "fs-extra": {
-          "version": "9.1.0",
-          "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz",
-          "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==",
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "at-least-node": "^1.0.0",
-            "graceful-fs": "^4.2.0",
-            "jsonfile": "^6.0.1",
-            "universalify": "^2.0.0"
-          }
-        },
-        "has-flag": {
-          "version": "4.0.0",
-          "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
-          "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
-          "dev": true,
-          "optional": true
-        },
-        "jsonfile": {
-          "version": "6.1.0",
-          "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz",
-          "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==",
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "graceful-fs": "^4.1.6",
-            "universalify": "^2.0.0"
-          }
-        },
-        "lru-cache": {
-          "version": "6.0.0",
-          "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
-          "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "yallist": "^4.0.0"
-          }
-        },
-        "schema-utils": {
-          "version": "2.7.0",
-          "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.0.tgz",
-          "integrity": "sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==",
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "@types/json-schema": "^7.0.4",
-            "ajv": "^6.12.2",
-            "ajv-keywords": "^3.4.1"
-          }
-        },
-        "semver": {
-          "version": "7.3.5",
-          "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz",
-          "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==",
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "lru-cache": "^6.0.0"
-          }
-        },
-        "supports-color": {
-          "version": "7.2.0",
-          "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
-          "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "has-flag": "^4.0.0"
-          }
-        },
-        "universalify": {
-          "version": "2.0.0",
-          "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz",
-          "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==",
-          "dev": true,
-          "optional": true
-        }
-      }
-    },
     "form-data": {
       "version": "2.3.3",
       "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz",
@@ -12729,80 +12803,6 @@
         }
       }
     },
-    "vue-loader-v16": {
-      "version": "npm:vue-loader@16.2.0",
-      "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-16.2.0.tgz",
-      "integrity": "sha512-TitGhqSQ61RJljMmhIGvfWzJ2zk9m1Qug049Ugml6QP3t0e95o0XJjk29roNEiPKJQBEi8Ord5hFuSuELzSp8Q==",
-      "dev": true,
-      "optional": true,
-      "requires": {
-        "chalk": "^4.1.0",
-        "hash-sum": "^2.0.0",
-        "loader-utils": "^2.0.0"
-      },
-      "dependencies": {
-        "ansi-styles": {
-          "version": "4.3.0",
-          "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
-          "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "color-convert": "^2.0.1"
-          }
-        },
-        "chalk": {
-          "version": "4.1.0",
-          "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz",
-          "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==",
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "ansi-styles": "^4.1.0",
-            "supports-color": "^7.1.0"
-          }
-        },
-        "color-convert": {
-          "version": "2.0.1",
-          "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
-          "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "color-name": "~1.1.4"
-          }
-        },
-        "has-flag": {
-          "version": "4.0.0",
-          "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
-          "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
-          "dev": true,
-          "optional": true
-        },
-        "loader-utils": {
-          "version": "2.0.0",
-          "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz",
-          "integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==",
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "big.js": "^5.2.2",
-            "emojis-list": "^3.0.0",
-            "json5": "^2.1.2"
-          }
-        },
-        "supports-color": {
-          "version": "7.2.0",
-          "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
-          "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "has-flag": "^4.0.0"
-          }
-        }
-      }
-    },
     "vue-router": {
       "version": "4.0.1",
       "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-4.0.1.tgz",

+ 14 - 0
src/assets/styles/mixin.less

@@ -240,6 +240,11 @@
                     background-color: @m-blue3;
                 }
             }
+            tr.ant-table-expanded-row {
+                td {
+                    text-align: right;
+                }
+            }
         }
         .ant-table-placeholder {
             border: 0;
@@ -536,6 +541,9 @@
 .formFieldSet {
     border: 1px solid @m-grey19;
     padding: 0 20px 20px;
+    legend {
+        color: @m-white0;
+    }
 }
 .formFieldSet+.formFieldSet {
     margin-top: 35px;
@@ -578,6 +586,12 @@
 .ml10 {
     margin-left: 10px;
 }
+.ml9 {
+    margin-left: 9px;
+}
+.ml5{
+    margin-left: 5px;
+}
 .grey {
     color: @m-grey2;
 }

+ 1 - 1
src/services/go/ermcp/purchase/interface.ts

@@ -21,7 +21,7 @@ export interface Ermcp3SellBuyContract {
     //:未提交 1:待审核 2:执行中 3:正常完结 4:审核拒绝 5:异常完结 6:已撤回
     contractmargin: number;//合同保证金
     contractno: string;//合同编号
-    contracttype: number;//合同类型 1-采购, -1-销售
+    contracttype: number;//合同类型 1-采购, -2-销售
     convertfactor: number;//标仓系数(品类)
     createtime: string;//创建时间
     daikaiamount: number;//应收(开)票额

+ 3 - 3
src/services/request/serviceURL.ts

@@ -73,10 +73,10 @@ export const commonSearchUrl = (url: string): string => {
 export const setServiceURL = (config: URL): void => {
     // console.log('URL', config);
     // 外网环境(175),外包同事使用
-    if (process.env.NODE_ENV === 'development') {
+    // if (process.env.NODE_ENV === 'development') {
         serviceURL.goCommonSearchUrl = 'http://218.17.158.45:21001/api';
         serviceURL.quoteUrl = 'ws://218.17.158.45:21004';
         serviceURL.tradeUrl = 'ws://218.17.158.45:21005';
-    }
-    serviceURL = config;
+    // }
+    // serviceURL = config;
 };

+ 194 - 22
src/views/business/purchase/components/funds/index.vue

@@ -1,42 +1,214 @@
 <template>
-  <!-- 款项登记-->
-  <a-modal class="custom-detail"
-           title="款项登记"
-           v-model:visible="visible"
-           @cancel="cancel"
-           width="890px">
-    <template #footer>
-      <a-button key="submit"
-                type="primary"
-                :loading="loading"
-                @click="submit">关闭</a-button>
-    </template>
+    <!-- 款项登记-->
+    <a-modal class="custom-detail add-custom "
+             :title="selectedRow.contracttype===1? '采购合同-款项登记': '销售合同-款项登记'"
+             v-model:visible="visible"
+             @cancel="cancel"
+             width="890px">
+        <template #footer>
+            <a-button key="submit"
+                      type="primary"
+                      @click="cancel">取消
+            </a-button>
+            <a-button key="submit"
+                    type="primary"
+                    :loading="loading"
+                    @click="submit">款项登记
+            </a-button>
+        </template>
+        <fieldset class="formFieldSet">
+            <legend>合同基本信息</legend>
+            <a-form class="inlineForm">
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item label="合同编号">
+                            <span class="white">{{ formatValue(selectedRow.contractno) }}</span>
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="定价.
+                        类型">
+                            <span class="white">{{ getPriceTypeName(selectedRow.pricetype) }}</span>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item :label="selectedRow.contracttype===1? '采购方': '销售方'">
+                            <span class="white">{{ formatValue(selectedRow.accountname) }}</span>
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="现货品种">
+                            <span class="white">{{ formatValue(selectedRow.deliverygoodsname) }}</span>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item label="合同签署量">
+                            <span class="white">{{ formatValue(selectedRow.qty + selectedRow.enumdicname) }}</span>
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="合同暂定价">
+                            <span class="white">{{ formatValue(selectedRow.price) }}</span>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item label="点价合约">
+                            <span class="white">{{ formatValue(selectedRow.goodsname) }}</span>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+            </a-form>
+        </fieldset>
+        <fieldset class="formFieldSet">
+            <legend>已登记信息</legend>
+            <a-form class="inlineForm">
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item label="已定价量">
+                            <span class="white">{{ selectedRow.pricedqty + selectedRow.enumdicname }}</span>
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="已点均价">
+                            <span class="white">{{ formatValue(selectedRow.pricedavg) }}</span>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+            </a-form>
+        </fieldset>
+        <fieldset class="formFieldSet">
+            <legend>本次点价信息</legend>
+            <a-form class="inlineForm"
+                        ref="formRef"
+                        :model="formState"
+                        :rules="formStateRules">
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item label="点价价格"  name="PricedPrice">
+                            <a-input-number id="dialogInput"  style="width: 200px" v-model:value="formState.PricedPrice" :min="0" placeholder="请输入点价价格"/>
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="升贴水">
+                            <span class="white">{{ formatValue(selectedRow.pricemove) }}</span>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
 
-  </a-modal>
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item label="商品价格">
+                            <span class="white">{{ Number(selectedRow.pricemove) + Number(formState.PricedPrice) }}</span>
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="点价数量" name="PricedQty">
+                            <a-input-number id="dialogInput"  style="width: 200px" v-model:value="formState.PricedQty" :min="0" :max="selectedRow.unpricedqty" placeholder="请输入点价数量"/>
+                            <span class="white">未定价量{{selectedRow.unpricedqty}}{{selectedRow.enumdicname}} </span>
+                            <span class="white" @click="formState.PricedQty = selectedRow.unpricedqty"> 全部登记</span>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item label="点价金额">
+                            <span class="white">{{( Number(selectedRow.pricemove) + Number(formState.PricedPrice)) * formState.PricedQty }}</span>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+            </a-form>
+        </fieldset>
+    </a-modal>
 </template>
 
 <script lang="ts">
-import { defineComponent, ref } from 'vue';
-import { closeModal } from '@/common/setup/modal/index';
+import {defineComponent, PropType, reactive, ref,unref} from 'vue';
+import {closeModal} from '@/common/setup/modal/index';
+import {formatValue} from "@/common/methods";
+import {Ermcp3SellBuyContract} from "@/services/go/ermcp/purchase/interface";
+import {getPriceTypeName} from "@/views/business/purchase/setup";
+import { operationContractReq } from '@/services/proto/contract';
+import { message } from 'ant-design-vue';
 
 export default defineComponent({
     name: 'purchase_pending_funds',
     components: {},
-    setup() {
-        const { visible, cancel } = closeModal('purchase_pending_funds');
+    props: {
+        selectedRow: {
+            type: Object as PropType<Ermcp3SellBuyContract>,
+            default: {},
+        },
+    },
+    setup(props) {
+        const {visible, cancel} = closeModal('purchase_pending_funds');
         const loading = ref<boolean>(false);
+        function objectToUint8Array(data: object) {
+            const encode = encodeURI(JSON.stringify(data));// 对字符串进行编码
+            const base64String = btoa(encode);// 对编码的字符串转化base64
+            const padding = '='.repeat((4 - base64String.length % 4) % 4);
+            const base64 = (base64String + padding).replace(/\-/g, '+').replace(/_/g, '/');
+            const rawData = window.atob(base64);
+            const outputArray = new Uint8Array(rawData.length);
+            for (var i = 0; i < rawData.length; ++i) {
+                outputArray[i] = rawData.charCodeAt(i);
+            }
+            return outputArray;
+        }
+
+        const formRef = ref();
+        const formState = reactive({ PricedPrice: 0, PricedQty: 0 });
+        const numberIstrue = (rule: any, value: any) => {
+            if (!value) {
+                return Promise.reject(new Error('请输入正确的值'));
+            } else {
+                return Promise.resolve();
+            }
+        };
+        const formStateRules = {
+            PricedPrice: [{ required: true, validator: numberIstrue, trigger: 'blur', type: 'number' }],
+            PricedQty: [{ required: true, validator: numberIstrue, trigger: 'blur', type: 'number' }],
+        }
         function submit() {
-            loading.value = true;
-            setTimeout(() => {
-                loading.value = false;
-                cancel();
-            }, 2000);
+            const wrapEl = unref(formRef);
+            wrapEl.validate().then(() => {
+                loading.value = true;
+                console.log(objectToUint8Array(formState));
+                operationContractReq({
+                    OperateType: 1, // uint32 操作类型-1:登记2:确认3:拒绝4:撤销
+                    Info: {
+                        OperateApplyType: 1, // uint32 操作申请类型-1:点价2:结算3:款项4:发票
+                        RelatedID: 1, // uint64 现货合同ID(602+Unix秒时间戳(10位)+xxxxxx)
+                        DetailJson : objectToUint8Array(formState), // bytes 明细JSON {}
+                    }
+                }).then(()=>{
+                    message.success('登记成功!')
+                    loading.value = false;
+                    cancel();
+                }).catch(err=>{
+                    message.error(err)
+                    loading.value = false;
+                    cancel();
+                })
+            });
         }
+
         return {
             visible,
             cancel,
             submit,
             loading,
+            formRef,
+            formState,
+            formatValue,
+            formStateRules,
+            getPriceTypeName,
         };
     },
 });

+ 194 - 22
src/views/business/purchase/components/invoice/index.vue

@@ -1,42 +1,214 @@
 <template>
-  <!-- 发票登记-->
-  <a-modal class="custom-detail"
-           title="发票登记"
-           v-model:visible="visible"
-           @cancel="cancel"
-           width="890px">
-    <template #footer>
-      <a-button key="submit"
-                type="primary"
-                :loading="loading"
-                @click="submit">关闭</a-button>
-    </template>
+    <!-- 发票登记-->
+    <a-modal class="custom-detail add-custom "
+             :title="selectedRow.contracttype===1? '采购合同-发票登记': '销售合同-发票登记'"
+             v-model:visible="visible"
+             @cancel="cancel"
+             width="890px">
+        <template #footer>
+            <a-button key="submit"
+                      type="primary"
+                      @click="cancel">取消
+            </a-button>
+            <a-button key="submit"
+                    type="primary"
+                    :loading="loading"
+                    @click="submit">发票登记
+            </a-button>
+        </template>
+        <fieldset class="formFieldSet">
+            <legend>合同基本信息</legend>
+            <a-form class="inlineForm">
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item label="合同编号">
+                            <span class="white">{{ formatValue(selectedRow.contractno) }}</span>
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="定价.
+                        类型">
+                            <span class="white">{{ getPriceTypeName(selectedRow.pricetype) }}</span>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item :label="selectedRow.contracttype===1? '采购方': '销售方'">
+                            <span class="white">{{ formatValue(selectedRow.accountname) }}</span>
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="现货品种">
+                            <span class="white">{{ formatValue(selectedRow.deliverygoodsname) }}</span>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item label="合同签署量">
+                            <span class="white">{{ formatValue(selectedRow.qty + selectedRow.enumdicname) }}</span>
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="合同暂定价">
+                            <span class="white">{{ formatValue(selectedRow.price) }}</span>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item label="点价合约">
+                            <span class="white">{{ formatValue(selectedRow.goodsname) }}</span>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+            </a-form>
+        </fieldset>
+        <fieldset class="formFieldSet">
+            <legend>已登记信息</legend>
+            <a-form class="inlineForm">
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item label="已定价量">
+                            <span class="white">{{ selectedRow.pricedqty + selectedRow.enumdicname }}</span>
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="已点均价">
+                            <span class="white">{{ formatValue(selectedRow.pricedavg) }}</span>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+            </a-form>
+        </fieldset>
+        <fieldset class="formFieldSet">
+            <legend>本次点价信息</legend>
+            <a-form class="inlineForm"
+                        ref="formRef"
+                        :model="formState"
+                        :rules="formStateRules">
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item label="点价价格"  name="PricedPrice">
+                            <a-input-number id="dialogInput"  style="width: 200px" v-model:value="formState.PricedPrice" :min="0" placeholder="请输入点价价格"/>
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="升贴水">
+                            <span class="white">{{ formatValue(selectedRow.pricemove) }}</span>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
 
-  </a-modal>
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item label="商品价格">
+                            <span class="white">{{ Number(selectedRow.pricemove) + Number(formState.PricedPrice) }}</span>
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="点价数量" name="PricedQty">
+                            <a-input-number id="dialogInput"  style="width: 200px" v-model:value="formState.PricedQty" :min="0" :max="selectedRow.unpricedqty" placeholder="请输入点价数量"/>
+                            <span class="white">未定价量{{selectedRow.unpricedqty}}{{selectedRow.enumdicname}} </span>
+                            <span class="white" @click="formState.PricedQty = selectedRow.unpricedqty"> 全部登记</span>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item label="点价金额">
+                            <span class="white">{{( Number(selectedRow.pricemove) + Number(formState.PricedPrice)) * formState.PricedQty }}</span>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+            </a-form>
+        </fieldset>
+    </a-modal>
 </template>
 
 <script lang="ts">
-import { defineComponent, ref } from 'vue';
-import { closeModal } from '@/common/setup/modal/index';
+import {defineComponent, PropType, reactive, ref,unref} from 'vue';
+import {closeModal} from '@/common/setup/modal/index';
+import {formatValue} from "@/common/methods";
+import {Ermcp3SellBuyContract} from "@/services/go/ermcp/purchase/interface";
+import {getPriceTypeName} from "@/views/business/purchase/setup";
+import { operationContractReq } from '@/services/proto/contract';
+import { message } from 'ant-design-vue';
 
 export default defineComponent({
     name: 'purchase_pending_invoice',
     components: {},
-    setup() {
-        const { visible, cancel } = closeModal('purchase_pending_invoice');
+    props: {
+        selectedRow: {
+            type: Object as PropType<Ermcp3SellBuyContract>,
+            default: {},
+        },
+    },
+    setup(props) {
+        const {visible, cancel} = closeModal('purchase_pending_invoice');
         const loading = ref<boolean>(false);
+        function objectToUint8Array(data: object) {
+            const encode = encodeURI(JSON.stringify(data));// 对字符串进行编码
+            const base64String = btoa(encode);// 对编码的字符串转化base64
+            const padding = '='.repeat((4 - base64String.length % 4) % 4);
+            const base64 = (base64String + padding).replace(/\-/g, '+').replace(/_/g, '/');
+            const rawData = window.atob(base64);
+            const outputArray = new Uint8Array(rawData.length);
+            for (var i = 0; i < rawData.length; ++i) {
+                outputArray[i] = rawData.charCodeAt(i);
+            }
+            return outputArray;
+        }
+
+        const formRef = ref();
+        const formState = reactive({ PricedPrice: 0, PricedQty: 0 });
+        const numberIstrue = (rule: any, value: any) => {
+            if (!value) {
+                return Promise.reject(new Error('请输入正确的值'));
+            } else {
+                return Promise.resolve();
+            }
+        };
+        const formStateRules = {
+            PricedPrice: [{ required: true, validator: numberIstrue, trigger: 'blur', type: 'number' }],
+            PricedQty: [{ required: true, validator: numberIstrue, trigger: 'blur', type: 'number' }],
+        }
         function submit() {
-            loading.value = true;
-            setTimeout(() => {
-                loading.value = false;
-                cancel();
-            }, 2000);
+            const wrapEl = unref(formRef);
+            wrapEl.validate().then(() => {
+                loading.value = true;
+                console.log(objectToUint8Array(formState));
+                operationContractReq({
+                    OperateType: 1, // uint32 操作类型-1:登记2:确认3:拒绝4:撤销
+                    Info: {
+                        OperateApplyType: 1, // uint32 操作申请类型-1:点价2:结算3:款项4:发票
+                        RelatedID: 1, // uint64 现货合同ID(602+Unix秒时间戳(10位)+xxxxxx)
+                        DetailJson : objectToUint8Array(formState), // bytes 明细JSON {}
+                    }
+                }).then(()=>{
+                    message.success('登记成功!')
+                    loading.value = false;
+                    cancel();
+                }).catch(err=>{
+                    message.error(err)
+                    loading.value = false;
+                    cancel();
+                })
+            });
         }
+
         return {
             visible,
             cancel,
             submit,
             loading,
+            formRef,
+            formState,
+            formatValue,
+            formStateRules,
+            getPriceTypeName,
         };
     },
 });

+ 194 - 22
src/views/business/purchase/components/settlement/index.vue

@@ -1,42 +1,214 @@
 <template>
-  <!-- 交收登记-->
-  <a-modal class="custom-detail"
-           title="交收登记"
-           v-model:visible="visible"
-           @cancel="cancel"
-           width="890px">
-    <template #footer>
-      <a-button key="submit"
-                type="primary"
-                :loading="loading"
-                @click="submit">关闭</a-button>
-    </template>
+    <!-- 交收登记-->
+    <a-modal class="custom-detail add-custom "
+             :title="selectedRow.contracttype===1? '采购合同-交收登记': '销售合同-交收登记'"
+             v-model:visible="visible"
+             @cancel="cancel"
+             width="890px">
+        <template #footer>
+            <a-button key="submit"
+                      type="primary"
+                      @click="cancel">取消
+            </a-button>
+            <a-button key="submit"
+                    type="primary"
+                    :loading="loading"
+                    @click="submit">交收登记
+            </a-button>
+        </template>
+        <fieldset class="formFieldSet">
+            <legend>合同基本信息</legend>
+            <a-form class="inlineForm">
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item label="合同编号">
+                            <span class="white">{{ formatValue(selectedRow.contractno) }}</span>
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="定价.
+                        类型">
+                            <span class="white">{{ getPriceTypeName(selectedRow.pricetype) }}</span>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item :label="selectedRow.contracttype===1? '采购方': '销售方'">
+                            <span class="white">{{ formatValue(selectedRow.accountname) }}</span>
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="现货品种">
+                            <span class="white">{{ formatValue(selectedRow.deliverygoodsname) }}</span>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item label="合同签署量">
+                            <span class="white">{{ formatValue(selectedRow.qty + selectedRow.enumdicname) }}</span>
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="合同暂定价">
+                            <span class="white">{{ formatValue(selectedRow.price) }}</span>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item label="点价合约">
+                            <span class="white">{{ formatValue(selectedRow.goodsname) }}</span>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+            </a-form>
+        </fieldset>
+        <fieldset class="formFieldSet">
+            <legend>已登记信息</legend>
+            <a-form class="inlineForm">
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item label="已定价量">
+                            <span class="white">{{ selectedRow.pricedqty + selectedRow.enumdicname }}</span>
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="已点均价">
+                            <span class="white">{{ formatValue(selectedRow.pricedavg) }}</span>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+            </a-form>
+        </fieldset>
+        <fieldset class="formFieldSet">
+            <legend>本次点价信息</legend>
+            <a-form class="inlineForm"
+                        ref="formRef"
+                        :model="formState"
+                        :rules="formStateRules">
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item label="点价价格"  name="PricedPrice">
+                            <a-input-number id="dialogInput"  style="width: 200px" v-model:value="formState.PricedPrice" :min="0" placeholder="请输入点价价格"/>
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="升贴水">
+                            <span class="white">{{ formatValue(selectedRow.pricemove) }}</span>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
 
-  </a-modal>
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item label="商品价格">
+                            <span class="white">{{ Number(selectedRow.pricemove) + Number(formState.PricedPrice) }}</span>
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="点价数量" name="PricedQty">
+                            <a-input-number id="dialogInput"  style="width: 200px" v-model:value="formState.PricedQty" :min="0" :max="selectedRow.unpricedqty" placeholder="请输入点价数量"/>
+                            <span class="white">未定价量{{selectedRow.unpricedqty}}{{selectedRow.enumdicname}} </span>
+                            <span class="white" @click="formState.PricedQty = selectedRow.unpricedqty"> 全部登记</span>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item label="点价金额">
+                            <span class="white">{{( Number(selectedRow.pricemove) + Number(formState.PricedPrice)) * formState.PricedQty }}</span>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+            </a-form>
+        </fieldset>
+    </a-modal>
 </template>
 
 <script lang="ts">
-import { defineComponent, ref } from 'vue';
-import { closeModal } from '@/common/setup/modal/index';
+import {defineComponent, PropType, reactive, ref,unref} from 'vue';
+import {closeModal} from '@/common/setup/modal/index';
+import {formatValue} from "@/common/methods";
+import {Ermcp3SellBuyContract} from "@/services/go/ermcp/purchase/interface";
+import {getPriceTypeName} from "@/views/business/purchase/setup";
+import { operationContractReq } from '@/services/proto/contract';
+import { message } from 'ant-design-vue';
 
 export default defineComponent({
     name: 'purchase_pending_settlement',
     components: {},
-    setup() {
-        const { visible, cancel } = closeModal('purchase_pending_settlement');
+    props: {
+        selectedRow: {
+            type: Object as PropType<Ermcp3SellBuyContract>,
+            default: {},
+        },
+    },
+    setup(props) {
+        const {visible, cancel} = closeModal('purchase_pending_settlement');
         const loading = ref<boolean>(false);
+        function objectToUint8Array(data: object) {
+            const encode = encodeURI(JSON.stringify(data));// 对字符串进行编码
+            const base64String = btoa(encode);// 对编码的字符串转化base64
+            const padding = '='.repeat((4 - base64String.length % 4) % 4);
+            const base64 = (base64String + padding).replace(/\-/g, '+').replace(/_/g, '/');
+            const rawData = window.atob(base64);
+            const outputArray = new Uint8Array(rawData.length);
+            for (var i = 0; i < rawData.length; ++i) {
+                outputArray[i] = rawData.charCodeAt(i);
+            }
+            return outputArray;
+        }
+
+        const formRef = ref();
+        const formState = reactive({ PricedPrice: 0, PricedQty: 0 });
+        const numberIstrue = (rule: any, value: any) => {
+            if (!value) {
+                return Promise.reject(new Error('请输入正确的值'));
+            } else {
+                return Promise.resolve();
+            }
+        };
+        const formStateRules = {
+            PricedPrice: [{ required: true, validator: numberIstrue, trigger: 'blur', type: 'number' }],
+            PricedQty: [{ required: true, validator: numberIstrue, trigger: 'blur', type: 'number' }],
+        }
         function submit() {
-            loading.value = true;
-            setTimeout(() => {
-                loading.value = false;
-                cancel();
-            }, 2000);
+            const wrapEl = unref(formRef);
+            wrapEl.validate().then(() => {
+                loading.value = true;
+                console.log(objectToUint8Array(formState));
+                operationContractReq({
+                    OperateType: 1, // uint32 操作类型-1:登记2:确认3:拒绝4:撤销
+                    Info: {
+                        OperateApplyType: 1, // uint32 操作申请类型-1:点价2:结算3:款项4:发票
+                        RelatedID: 1, // uint64 现货合同ID(602+Unix秒时间戳(10位)+xxxxxx)
+                        DetailJson : objectToUint8Array(formState), // bytes 明细JSON {}
+                    }
+                }).then(()=>{
+                    message.success('登记成功!')
+                    loading.value = false;
+                    cancel();
+                }).catch(err=>{
+                    message.error(err)
+                    loading.value = false;
+                    cancel();
+                })
+            });
         }
+
         return {
             visible,
             cancel,
             submit,
             loading,
+            formRef,
+            formState,
+            formatValue,
+            formStateRules,
+            getPriceTypeName,
         };
     },
 });

+ 194 - 22
src/views/business/purchase/components/someprice/index.vue

@@ -1,42 +1,214 @@
 <template>
-  <!-- 采购点价登记-->
-  <a-modal class="custom-detail"
-           title="点价登记"
-           v-model:visible="visible"
-           @cancel="cancel"
-           width="890px">
-    <template #footer>
-      <a-button key="submit"
-                type="primary"
-                :loading="loading"
-                @click="submit">关闭</a-button>
-    </template>
+    <!-- 点价登记-->
+    <a-modal class="custom-detail add-custom "
+             :title="selectedRow.contracttype===1? '采购合同-点价登记': '销售合同-点价登记'"
+             v-model:visible="visible"
+             @cancel="cancel"
+             width="890px">
+        <template #footer>
+            <a-button key="submit"
+                      type="primary"
+                      @click="cancel">取消
+            </a-button>
+            <a-button key="submit"
+                    type="primary"
+                    :loading="loading"
+                    @click="submit">点价登记
+            </a-button>
+        </template>
+        <fieldset class="formFieldSet">
+            <legend>合同基本信息</legend>
+            <a-form class="inlineForm">
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item label="合同编号">
+                            <span class="white">{{ formatValue(selectedRow.contractno) }}</span>
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="定价.
+                        类型">
+                            <span class="white">{{ getPriceTypeName(selectedRow.pricetype) }}</span>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item :label="selectedRow.contracttype===1? '采购方': '销售方'">
+                            <span class="white">{{ formatValue(selectedRow.accountname) }}</span>
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="现货品种">
+                            <span class="white">{{ formatValue(selectedRow.deliverygoodsname) }}</span>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item label="合同签署量">
+                            <span class="white">{{ formatValue(selectedRow.qty + selectedRow.enumdicname) }}</span>
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="合同暂定价">
+                            <span class="white">{{ formatValue(selectedRow.price) }}</span>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item label="点价合约">
+                            <span class="white">{{ formatValue(selectedRow.goodsname) }}</span>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+            </a-form>
+        </fieldset>
+        <fieldset class="formFieldSet">
+            <legend>已登记信息</legend>
+            <a-form class="inlineForm">
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item label="已定价量">
+                            <span class="white">{{ selectedRow.pricedqty + selectedRow.enumdicname }}</span>
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="已点均价">
+                            <span class="white">{{ formatValue(selectedRow.pricedavg) }}</span>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+            </a-form>
+        </fieldset>
+        <fieldset class="formFieldSet">
+            <legend>本次点价信息</legend>
+            <a-form class="inlineForm"
+                        ref="formRef"
+                        :model="formState"
+                        :rules="formStateRules">
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item label="点价价格"  name="PricedPrice">
+                            <a-input-number id="dialogInput"  style="width: 200px" v-model:value="formState.PricedPrice" :min="0" placeholder="请输入点价价格"/>
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="升贴水">
+                            <span class="white">{{ formatValue(selectedRow.pricemove) }}</span>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
 
-  </a-modal>
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item label="商品价格">
+                            <span class="white">{{ Number(selectedRow.pricemove) + Number(formState.PricedPrice) }}</span>
+                        </a-form-item>
+                    </a-col>
+                    <a-col :span="12">
+                        <a-form-item label="点价数量" name="PricedQty">
+                            <a-input-number id="dialogInput"  style="width: 200px" v-model:value="formState.PricedQty" :min="0" :max="selectedRow.unpricedqty" placeholder="请输入点价数量"/>
+                            <span class="white">未定价量{{selectedRow.unpricedqty}}{{selectedRow.enumdicname}} </span>
+                            <span class="white" @click="formState.PricedQty = selectedRow.unpricedqty"> 全部登记</span>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+
+                <a-row :gutter="24">
+                    <a-col :span="12">
+                        <a-form-item label="点价金额">
+                            <span class="white">{{( Number(selectedRow.pricemove) + Number(formState.PricedPrice)) * formState.PricedQty }}</span>
+                        </a-form-item>
+                    </a-col>
+                </a-row>
+            </a-form>
+        </fieldset>
+    </a-modal>
 </template>
 
 <script lang="ts">
-import { defineComponent, ref } from 'vue';
-import { closeModal } from '@/common/setup/modal/index';
+import {defineComponent, PropType, reactive, ref,unref} from 'vue';
+import {closeModal} from '@/common/setup/modal/index';
+import {formatValue} from "@/common/methods";
+import {Ermcp3SellBuyContract} from "@/services/go/ermcp/purchase/interface";
+import {getPriceTypeName} from "@/views/business/purchase/setup";
+import { operationContractReq } from '@/services/proto/contract';
+import { message } from 'ant-design-vue';
 
 export default defineComponent({
     name: 'purchase_pending_someprice',
     components: {},
-    setup() {
-        const { visible, cancel } = closeModal('purchase_pending_someprice');
+    props: {
+        selectedRow: {
+            type: Object as PropType<Ermcp3SellBuyContract>,
+            default: {},
+        },
+    },
+    setup(props) {
+        const {visible, cancel} = closeModal('purchase_pending_someprice');
         const loading = ref<boolean>(false);
+        function objectToUint8Array(data: object) {
+            const encode = encodeURI(JSON.stringify(data));// 对字符串进行编码
+            const base64String = btoa(encode);// 对编码的字符串转化base64
+            const padding = '='.repeat((4 - base64String.length % 4) % 4);
+            const base64 = (base64String + padding).replace(/\-/g, '+').replace(/_/g, '/');
+            const rawData = window.atob(base64);
+            const outputArray = new Uint8Array(rawData.length);
+            for (var i = 0; i < rawData.length; ++i) {
+                outputArray[i] = rawData.charCodeAt(i);
+            }
+            return outputArray;
+        }
+
+        const formRef = ref();
+        const formState = reactive({ PricedPrice: 0, PricedQty: 0 });
+        const numberIstrue = (rule: any, value: any) => {
+            if (!value) {
+                return Promise.reject(new Error('请输入正确的值'));
+            } else {
+                return Promise.resolve();
+            }
+        };
+        const formStateRules = {
+            PricedPrice: [{ required: true, validator: numberIstrue, trigger: 'blur', type: 'number' }],
+            PricedQty: [{ required: true, validator: numberIstrue, trigger: 'blur', type: 'number' }],
+        }
         function submit() {
-            loading.value = true;
-            setTimeout(() => {
-                loading.value = false;
-                cancel();
-            }, 2000);
+            const wrapEl = unref(formRef);
+            wrapEl.validate().then(() => {
+                loading.value = true;
+                console.log(objectToUint8Array(formState));
+                operationContractReq({
+                    OperateType: 1, // uint32 操作类型-1:登记2:确认3:拒绝4:撤销
+                    Info: {
+                        OperateApplyType: 1, // uint32 操作申请类型-1:点价2:结算3:款项4:发票
+                        RelatedID: 1, // uint64 现货合同ID(602+Unix秒时间戳(10位)+xxxxxx)
+                        DetailJson : objectToUint8Array(formState), // bytes 明细JSON {}
+                    }
+                }).then(()=>{
+                    message.success('登记成功!')
+                    loading.value = false;
+                    cancel();
+                }).catch(err=>{
+                    message.error(err)
+                    loading.value = false;
+                    cancel();
+                })
+            });
         }
+
         return {
             visible,
             cancel,
             submit,
             loading,
+            formRef,
+            formState,
+            formatValue,
+            formStateRules,
+            getPriceTypeName,
         };
     },
 });

+ 6 - 6
src/views/business/purchase/list/all/index.vue

@@ -26,17 +26,17 @@
       </a-table>
     </contextMenu>
     <!-- 详情 -->
-    <Detail />
+    <Detail  :selectedRow="selectedRow"/>
     <!-- 采购点价登记 -->
-    <SomePrice />
+    <SomePrice  :selectedRow="selectedRow"/>
     <!-- 交收登记 -->
-    <Settlement />
+    <Settlement  :selectedRow="selectedRow"/>
     <!-- 款项登记 -->
-    <Funds />
+    <Funds  :selectedRow="selectedRow"/>
     <!-- 发票登记 -->
-    <Invoice />
+    <Invoice  :selectedRow="selectedRow"/>
     <!-- 入库登记 -->
-    <Storage />
+    <Storage  :selectedRow="selectedRow"/>
   </div>
 </template>
 

+ 1 - 1
src/views/business/purchase/list/pending/index.vue

@@ -28,7 +28,7 @@
     <!-- 详情 -->
     <Detail :selectedRow="selectedRow" />
     <!-- 采购点价登记 -->
-    <SomePrice />
+    <SomePrice :selectedRow="selectedRow"/>
   </div>
 </template>
 

+ 6 - 10
src/views/information/custom/compoments/setup.ts

@@ -5,6 +5,9 @@ import {UserInfoCheckMangeReq} from "@/services/proto/accountinfo/interface";
 import {message} from 'ant-design-vue';
 import {ref} from "vue";
 import {BaseResponse} from "@/services/go";
+import {getRequestResultInfo} from "@/common/methods/request";
+import {GldContractStateSign} from "@/views/information/spot-contract/setup";
+import {ModifyUserInfoSign} from "@/views/information/custom/setup";
 
 /**
  *  撤销客户资料 撤销后的数据会进入草稿(未提交)
@@ -37,21 +40,14 @@ export function updateUserAccount() {
 
     // 这里调用的是修改客户申请接口
     function ModifyUserInfo(userID: number, accountStatus: number): Promise<string> {
+        const sign = getRequestResultInfo(ModifyUserInfoSign, accountStatus)  // 接口请求后的返回提示 这里统一进行管理
         return UpdateUserAccountStatus(userID, accountStatus)
             .then((res) => {
                 console.log('更新用户资料成功 accountStatus = ' + accountStatus);
-                if (accountStatus === 4) {
-                    return Promise.resolve("恢复成功")
-                } else {
-                    return Promise.resolve("停用成功")
-                }
+                return Promise.resolve(sign[0])
             })
             .catch((err) => {
-                if (accountStatus === 4) {
-                    return Promise.reject("恢复失败:" + err.message)
-                } else {
-                    return Promise.reject("停用失败:" + err.message)
-                }
+                return Promise.reject(sign[1])
             }).finally(() => {
                 loading.value = false
             })

+ 10 - 0
src/views/information/custom/setup.ts

@@ -1,4 +1,5 @@
 import {getItemEnum} from "@/services/bus/allEnum";
+import {ResultInfo} from "@/common/methods/request/interface";
 
 /**
  * 获取客户资料状态
@@ -37,3 +38,12 @@ export function getCardTypeName(type: number): string{
     const cardName = getItemEnum('certificatetype').find(e => e.enumitemname === type);
     return cardName ? cardName.enumdicname : "--"
 }
+
+/************** 接口相关提示 **************** /
+ *
+ */
+// 更新用户状态 4:正常 6:注销(停用)
+export const ModifyUserInfoSign = new Map<number, ResultInfo>([
+    [4, ['恢复成功', '恢复失败:']],
+    [6, ['停用成功', '停用失败:']],
+])

+ 4 - 4
src/views/information/goods/components/modify/index.vue

@@ -142,7 +142,7 @@
                 客户二
               </a-select-option>
             </a-select>
-            <a-select class="inlineFormSelect"
+            <a-select class="inlineFormSelect ml5"
                       style="width: 205px"
                       placeholder="请选择市">
               <a-select-option value="1">
@@ -152,7 +152,7 @@
                 客户二
               </a-select-option>
             </a-select>
-            <a-select class="inlineFormSelect"
+            <a-select class="inlineFormSelect ml5"
                       style="width: 205px"
                       placeholder="请选择县(区)">
               <a-select-option value="1">
@@ -169,7 +169,7 @@
         <a-col :span="24">
           <a-form-item label="&nbsp;">
             <a-input class="dialogInput"
-                     style="width: 635px"
+                     style="width: 625px"
                      placeholder="请输入详细地址" />
           </a-form-item>
         </a-col>
@@ -178,7 +178,7 @@
         <a-col :span="24">
           <a-form-item label="备注">
             <a-input class="dialogInput"
-                     style="width: 635px"
+                     style="width: 625px"
                      placeholder="请输入备注" />
           </a-form-item>
         </a-col>

+ 1 - 3
src/views/information/spot-contract/components/cancel/index.vue

@@ -204,7 +204,6 @@ export default defineComponent({
         const {loading, orderContractState} = OrderContractControl()
         const maskClosableFlag = ref<boolean>(false);
         function submit() {
-            loading.value = true;
             Modal.confirm({
                 title: '是否确认撤销',
                 okText: '确认撤销',
@@ -213,12 +212,11 @@ export default defineComponent({
                     // 撤销合同
                     orderContractState(props.selectedRow.spotcontractid, 5)
                         .then(res => {
-                            message.success(res);
                             // 通知上层  刷新数据
                             context.emit('refresh');
                             cancel();
                         }).catch(err => {
-                        message.error(err);
+
                     });
                 },
                 onCancel() {

+ 0 - 2
src/views/information/spot-contract/components/delete/index.vue

@@ -213,12 +213,10 @@ export default defineComponent({
                     // 删除客户资料
                     orderContractState(props.selectedRow.spotcontractid, 1)
                         .then(res => {
-                            message.success(res);
                             // 通知上层  刷新数据
                             context.emit('refresh');
                             cancel();
                         }).catch(err => {
-                        message.error(err);
                     });
                 },
                 onCancel() {

+ 0 - 2
src/views/information/spot-contract/components/finish/index.vue

@@ -213,12 +213,10 @@ export default defineComponent({
                     // 完结合同
                     orderContractState(props.selectedRow.spotcontractid, 6)
                         .then(res => {
-                            message.success(res);
                             // 通知上层  刷新数据
                             context.emit('refresh');
                             cancel();
                         }).catch(err => {
-                        message.error(err);
                     });
                 },
                 onCancel() {

+ 2 - 2
src/views/information/spot-contract/components/modify/index.vue

@@ -1,6 +1,6 @@
 <template>
   <!-- 修改现货合同-->
-  <a-modal class="modify-custom"
+  <a-modal class="commonModal modify-custom"
            title="修改现货合同"
            v-model:visible="visible"
            @cancel="cancel"
@@ -327,7 +327,7 @@
           <a-col :span="24">
             <a-form-item label="备注">
               <a-input class="dialogInput"
-                      style="width: 620px"
+                      style="width: 608px"
                       placeholder="请输入备注" />
             </a-form-item>
           </a-col>

+ 14 - 44
src/views/information/spot-contract/components/setup.ts

@@ -5,6 +5,9 @@ import {
     SpotContractOperateReq
 } from "@/services/proto/spotcontract/interface";
 import { ref } from "vue";
+import {getRequestResultInfo} from "@/common/methods/request";
+import {ContractStateSign, GldContractStateSign} from "@/views/information/spot-contract/setup";
+import {message} from "ant-design-vue";
 
 /**
  * 合同操作相关
@@ -25,34 +28,16 @@ export function changeOrderContract() {
             Remark: '',
             Info: info,
         }
-        let successText = "成功"
-        let errorText = "失败"
-
-        switch (type) {
-            case 1:
-                successText = "保存草稿成功"
-                errorText = "保存草稿失败:"
-                break;
-            case 2:
-                successText = "提交申请成功"
-                errorText = "提交申请失败:"
-                break;
-            case 3:
-                successText = "删除成功"
-                errorText = "删除失败:"
-                break;
-            case 4:
-                successText = "审核通过"
-                errorText = "审核失败:"
-                break;
-        }
+        const sign = getRequestResultInfo(GldContractStateSign, type)  // 接口请求后的返回提示 这里统一进行管理
 
         return orderContract(reqs)
             .then(res => {
-                return Promise.resolve(successText)
+                message.success(sign[0])
+                return Promise.resolve(sign[0])
             })
             .catch(err => {
-                return Promise.reject(errorText + err)
+                message.success(sign[1])
+                return Promise.reject(sign[1] + err)
             }).finally(() => {
                 loading.value = false
             })
@@ -61,13 +46,13 @@ export function changeOrderContract() {
     return { loading, orderContractState }
 }
 
-
 /**
  * 修改合同类型
  * 4:审核拒绝 6:正常完结 5:撤销
  */
 export function OrderContractControl() {
     const loading = ref<boolean>(false);
+    loading.value = true
 
     function orderContractState(id: string, type: number): Promise<string> {
         const reqs: SpotContractOperateReq = {
@@ -75,30 +60,15 @@ export function OrderContractControl() {
             OperateType: type,
             Remark: '',
         }
-        let successText = "成功"
-        let errorText = "失败"
-
-        switch (type) {
-            case 4:
-                successText = "审核拒绝成功"
-                errorText = "审核拒绝失败:"
-                break;
-            case 5:
-                successText = "撤销成功"
-                errorText = "撤销失败:"
-                break;
-            case 6:
-                successText = "正常完结"
-                errorText = "合同完结失败:"
-                break;
-        }
-
+        const sign = getRequestResultInfo(ContractStateSign, type)  // 接口请求后的返回提示 这里统一进行管理
         return spotContractStatus(reqs)
             .then(res => {
-                return Promise.resolve(successText)
+                message.success(sign[0])
+                return Promise.resolve(sign[0])
             })
             .catch(err => {
-                return Promise.reject(errorText + err)
+                message.success(sign[1])
+                return Promise.reject(sign[1] + err)
             }).finally(() => {
                 loading.value = false
             })

+ 1 - 1
src/views/information/spot-contract/list/unsubmitted/index.vue

@@ -7,7 +7,7 @@
         </filterCustomTable>
         <contextMenu :contextMenuList="forDataBtn">
             <a-table :columns="columns"
-                     class="topTable"
+                     class="topTable hiddenFirstCol"
                      :pagination="false"
                      :expandedRowKeys="expandedRowKeys"
                      :customRow="Rowclick"

+ 16 - 0
src/views/information/spot-contract/setup.ts

@@ -4,6 +4,8 @@
  * //合同状态 - number;
  //:未提交 1:待审核 2:执行中 3:正常完结 4:审核拒绝 5:异常完结 6:已撤回
  */
+import {ResultInfo} from "@/common/methods/request/interface";
+
 export function getContractStatusName(state: number): string {
     let result = "--";
     switch (state) {
@@ -86,3 +88,17 @@ export function getContractTypeName(type: number): string{
 /************** 接口相关提示 **************** /
  *
  */
+// 合同操作 操作类型 1: 保存草稿  2: 提交申请 3: 删除成功 4:审核通过
+export const GldContractStateSign = new Map<number, ResultInfo>([
+    [1, ['保存草稿成功', '保存草稿失败:']],
+    [2, ['提交申请成功', '提交申请失败:']],
+    [3, ['删除成功', '删除失败:']],
+    [4, ['审核通过', '审核失败:']],
+])
+
+// 合同操作 4:审核拒绝 6:正常完结 5:撤销
+export const ContractStateSign = new Map<number, ResultInfo>([
+    [4, ['审核拒绝成功', '审核拒绝失败:']],
+    [5, ['撤销成功', '撤销失败:']],
+    [6, ['正常完结', '合同完结失败:']],
+])

+ 2 - 2
src/views/information/warehouse-info/compoments/add/index.vue

@@ -77,7 +77,7 @@
                 湖南省
               </a-select-option>
             </a-select>
-            <a-select class="inlineFormSelect"
+            <a-select class="inlineFormSelect ml9"
                       style="width: 205px"
                       placeholder="请选择市">
               <a-select-option value="1">
@@ -87,7 +87,7 @@
                 岳阳市
               </a-select-option>
             </a-select>
-            <a-select class="inlineFormSelect"
+            <a-select class="inlineFormSelect ml9"
                       style="width: 205px"
                       placeholder="请选择县(区)">
               <a-select-option value="1">

+ 2 - 2
src/views/information/warehouse-info/compoments/modify/index.vue

@@ -77,7 +77,7 @@
                 湖南省
               </a-select-option>
             </a-select>
-            <a-select class="inlineFormSelect"
+            <a-select class="inlineFormSelect ml9"
                       style="width: 205px"
                       placeholder="请选择市">
               <a-select-option value="1">
@@ -87,7 +87,7 @@
                 岳阳市
               </a-select-option>
             </a-select>
-            <a-select class="inlineFormSelect"
+            <a-select class="inlineFormSelect ml9"
                       style="width: 205px"
                       placeholder="请选择县(区)">
               <a-select-option value="1">