Browse Source

页面数据展示

zouzhd 3 years ago
parent
commit
5990eee959
100 changed files with 5448 additions and 7 deletions
  1. 20 7
      config/index.js
  2. BIN
      src/assets/401_images/401.gif
  3. BIN
      src/assets/404_images/404.png
  4. BIN
      src/assets/404_images/404_cloud.png
  5. BIN
      src/assets/PDF/PDFbackgroundImg.jpg
  6. BIN
      src/assets/PDF/PDFscan.jpg
  7. BIN
      src/assets/PDF/printButton.png
  8. BIN
      src/assets/PDF/printCount.png
  9. BIN
      src/assets/PDF/printEnter1.png
  10. BIN
      src/assets/PDF/printEnter2.png
  11. BIN
      src/assets/PDF/printEnter3.png
  12. 0 0
      src/assets/WarrantyPDF/测试.txt
  13. 179 0
      src/assets/excel/Blob.js
  14. 142 0
      src/assets/excel/Export2Excel.js
  15. BIN
      src/assets/homepageimg/RMS.png
  16. BIN
      src/assets/homepageimg/TMS.png
  17. BIN
      src/assets/homepageimg/WMS.png
  18. BIN
      src/assets/homepageimg/beiji.jpg
  19. BIN
      src/assets/homepageimg/contract.png
  20. BIN
      src/assets/homepageimg/inward.png
  21. BIN
      src/assets/homepageimg/money.png
  22. BIN
      src/assets/homepageimg/queue.png
  23. BIN
      src/assets/homepageimg/sale.png
  24. BIN
      src/assets/homepageimg/statisticalReport.png
  25. BIN
      src/assets/homepageimg/微信图片_20211128192004.jpg
  26. BIN
      src/assets/img/car.png
  27. BIN
      src/assets/img/car1.png
  28. BIN
      src/assets/img/down.png
  29. BIN
      src/assets/img/empty.jpg
  30. BIN
      src/assets/img/end.png
  31. BIN
      src/assets/img/image.png
  32. BIN
      src/assets/img/min.png
  33. BIN
      src/assets/img/start.png
  34. BIN
      src/assets/img/vip.png
  35. BIN
      src/assets/login/login.jpg
  36. BIN
      src/assets/saleSelfMachine/Warranty.png
  37. BIN
      src/assets/saleSelfMachine/backgroundImg.jpg
  38. BIN
      src/assets/saleSelfMachine/billOfLading.png
  39. BIN
      src/assets/saleSelfMachine/scanCode.jpg
  40. BIN
      src/assets/saleSelfMachine/ticketChangeDeliveryNote.png
  41. 21 0
      src/components/DilCommonUI/index.js
  42. 131 0
      src/components/DilCommonUI/packages/form/README.md
  43. 21 0
      src/components/DilCommonUI/packages/form/demo/01_base.vue
  44. 7 0
      src/components/DilCommonUI/packages/form/index.js
  45. 37 0
      src/components/DilCommonUI/packages/form/src/bsae-item.vue
  46. 87 0
      src/components/DilCommonUI/packages/form/src/common.js
  47. 46 0
      src/components/DilCommonUI/packages/form/src/form-group.vue
  48. 171 0
      src/components/DilCommonUI/packages/form/src/form-item.vue
  49. 67 0
      src/components/DilCommonUI/packages/form/src/form.vue
  50. 214 0
      src/components/DilCommonUI/packages/table/README.md
  51. 15 0
      src/components/DilCommonUI/packages/table/demo/01_BaseTable.vue
  52. 12 0
      src/components/DilCommonUI/packages/table/demo/02_CommonTable.vue
  53. 38 0
      src/components/DilCommonUI/packages/table/demo/03_OperateTable.vue
  54. 29 0
      src/components/DilCommonUI/packages/table/demo/04_RadioTable.vue
  55. 29 0
      src/components/DilCommonUI/packages/table/demo/05_SelectionTable.vue
  56. 36 0
      src/components/DilCommonUI/packages/table/demo/06_FilterTable.vue
  57. 7 0
      src/components/DilCommonUI/packages/table/index.js
  58. 326 0
      src/components/DilCommonUI/packages/table/src/table.js
  59. 243 0
      src/components/DilCommonUI/packages/table/src/table.vue
  60. 22 0
      src/views/RMS/app.html
  61. 86 0
      src/views/RMS/app.js
  62. 59 0
      src/views/RMS/components/addCapacity.vue
  63. 88 0
      src/views/RMS/components/addCarDriver.vue
  64. 75 0
      src/views/RMS/components/addCarrier.vue
  65. 132 0
      src/views/RMS/components/addGatepost.vue
  66. 162 0
      src/views/RMS/components/addMaterial.vue
  67. 54 0
      src/views/RMS/components/addOilPrice.vue
  68. 59 0
      src/views/RMS/components/addPersonnel.vue
  69. 60 0
      src/views/RMS/components/addPier.vue
  70. 61 0
      src/views/RMS/components/addPort.vue
  71. 5 0
      src/views/RMS/components/addPortStorageYard.vue
  72. 0 0
      src/views/RMS/components/addRawMaterialManufacturer.vue
  73. 54 0
      src/views/RMS/components/addRawWarehouse.vue
  74. 59 0
      src/views/RMS/components/addRmsShipper.vue
  75. 56 0
      src/views/RMS/components/addSupplier.vue
  76. 159 0
      src/views/RMS/components/addTruckCalculate.vue
  77. 111 0
      src/views/RMS/components/capacity.vue
  78. 114 0
      src/views/RMS/components/carDriver.vue
  79. 112 0
      src/views/RMS/components/carrier.vue
  80. 0 0
      src/views/RMS/components/detailsTruckCalculate.vue
  81. 93 0
      src/views/RMS/components/editCapacity.vue
  82. 92 0
      src/views/RMS/components/editCarDriver.vue
  83. 103 0
      src/views/RMS/components/editCarrier.vue
  84. 321 0
      src/views/RMS/components/editGatepost.vue
  85. 93 0
      src/views/RMS/components/editMaterial.vue
  86. 86 0
      src/views/RMS/components/editOilPrice.vue
  87. 86 0
      src/views/RMS/components/editPersonnel.vue
  88. 0 0
      src/views/RMS/components/editPier.vue
  89. 0 0
      src/views/RMS/components/editPortStorageYard.vue
  90. 0 0
      src/views/RMS/components/editRawMaterialManufacturer.vue
  91. 79 0
      src/views/RMS/components/editRawWarehouse.vue
  92. 84 0
      src/views/RMS/components/editRmsShipper.vue
  93. 88 0
      src/views/RMS/components/editSupplier.vue
  94. 271 0
      src/views/RMS/components/editTruckCalculate.vue
  95. 112 0
      src/views/RMS/components/gatepost.vue
  96. 112 0
      src/views/RMS/components/material.vue
  97. 115 0
      src/views/RMS/components/oilPrice.vue
  98. 113 0
      src/views/RMS/components/personnel.vue
  99. 96 0
      src/views/RMS/components/pier.vue
  100. 98 0
      src/views/RMS/components/port.vue

+ 20 - 7
config/index.js

@@ -9,7 +9,7 @@ const pathSrc = path.resolve(__dirname, '../src');
 let proxyTable = {
 let proxyTable = {
   '/icore.icp.web/pass/v1/sysusers/user/token': {  //https://portal.steerinfo.com/icore.icp.web/pass/sso/v1/sysusers/user/token
   '/icore.icp.web/pass/v1/sysusers/user/token': {  //https://portal.steerinfo.com/icore.icp.web/pass/sso/v1/sysusers/user/token
     //target: 'https://portal-dev.steerinfo.com/icore.icp.web/pass/sso/v1/sysusers/user/token',
     //target: 'https://portal-dev.steerinfo.com/icore.icp.web/pass/sso/v1/sysusers/user/token',
-    target:'http://172.16.33.161:9001/v1/sysusers/user/token',
+    target:'http://172.16.33.166:9001/v1/sysusers/user/token',
     changeOrigin: true,
     changeOrigin: true,
     pathRewrite: {
     pathRewrite: {
       '^/icore.icp.web/pass/v1/sysusers/user/token': '/'
       '^/icore.icp.web/pass/v1/sysusers/user/token': '/'
@@ -17,7 +17,7 @@ let proxyTable = {
   },
   },
   '/icore.icp.web/pass/v1': {
   '/icore.icp.web/pass/v1': {
     //target: 'http://172.16.33.161:80/v1', //加http
     //target: 'http://172.16.33.161:80/v1', //加http
-    target: 'http://172.16.33.161:9001/v1',
+    target: 'http://172.16.33.166:9001/v1',
     changeOrigin: true,
     changeOrigin: true,
     pathRewrite: {
     pathRewrite: {
       '^/icore.icp.web/pass/v1': '/' //这里理解成用‘/api’代替target里面的地址,组件中我们调接口时直接用/api代替
       '^/icore.icp.web/pass/v1': '/' //这里理解成用‘/api’代替target里面的地址,组件中我们调接口时直接用/api代替
@@ -26,30 +26,43 @@ let proxyTable = {
   },
   },
    '/icore.icp.web/pass/auth/login': {
    '/icore.icp.web/pass/auth/login': {
      //target: 'http://sso-dev.steerinfo.com/icore.icp.web/pass/auth/login',
      //target: 'http://sso-dev.steerinfo.com/icore.icp.web/pass/auth/login',
-     target: 'http://172.16.33.161:9001/auth/login',
+     target: 'http://172.16.33.166:9001/auth/login',
      changeOrigin: true,
      changeOrigin: true,
      pathRewrite: {
      pathRewrite: {
        '^/icore.icp.web/pass/auth/login': ''
        '^/icore.icp.web/pass/auth/login': ''
      }
      }
    },
    },
    '/icore-api': {
    '/icore-api': {
-    target: 'http://172.16.33.161:9001',
+    target: 'http://172.16.33.166:9001',
     changeOrigin: true,
     changeOrigin: true,
     pathRewrite: {
     pathRewrite: {
       '^/icore-api': '/'
       '^/icore-api': '/'
     }
     }
   },
   },
   '/icore.icp.web/pass/act': {
   '/icore.icp.web/pass/act': {
-    target: 'http://172.16.33.161:8095',
+    target: 'http://172.16.33.166:8095',
     changeOrigin: true,
     changeOrigin: true,
     pathRewrite: {
     pathRewrite: {
       '^/icore.icp.web/pass/act': '/'
       '^/icore.icp.web/pass/act': '/'
     }
     }
   },
   },
-
+  "/api/v1/cd": {
+    target: "http://172.16.33.166:8083",
+    ws: true,
+    pathRewrite: {
+      "^/api/v1/cd": "/api/v1/cd"
+    }
+  },
+  "/api/v1": {
+    target: "http://172.16.33.166:8080",
+    ws: true,
+    pathRewrite: {
+      '^/api/v1': '/api/v1'
+    }
+  },
   
   
   '/api/v1/oms/': {
   '/api/v1/oms/': {
-    target: 'http://172.16.33.161:9001', 
+    target: 'http://172.16.33.166:9001', 
     changeOrigin: true,
     changeOrigin: true,
     pathRewrite: {
     pathRewrite: {
       '^/icore.icp.web/pass/logout': '/'
       '^/icore.icp.web/pass/logout': '/'

BIN
src/assets/401_images/401.gif


BIN
src/assets/404_images/404.png


BIN
src/assets/404_images/404_cloud.png


BIN
src/assets/PDF/PDFbackgroundImg.jpg


BIN
src/assets/PDF/PDFscan.jpg


BIN
src/assets/PDF/printButton.png


BIN
src/assets/PDF/printCount.png


BIN
src/assets/PDF/printEnter1.png


BIN
src/assets/PDF/printEnter2.png


BIN
src/assets/PDF/printEnter3.png


+ 0 - 0
src/assets/WarrantyPDF/测试.txt


+ 179 - 0
src/assets/excel/Blob.js

@@ -0,0 +1,179 @@
+/* eslint-disable */
+/* Blob.js
+ * A Blob implementation.
+ * 2014-05-27
+ *
+ * By Eli Grey, http://eligrey.com
+ * By Devin Samarin, https://github.com/eboyjr
+ * License: X11/MIT
+ *   See LICENSE.md
+ */
+ 
+/*global self, unescape */
+/*jslint bitwise: true, regexp: true, confusion: true, es5: true, vars: true, white: true,
+ plusplus: true */
+ 
+/*! @source http://purl.eligrey.com/github/Blob.js/blob/master/Blob.js */
+ 
+(function (view) {
+    "use strict";
+ 
+    view.URL = view.URL || view.webkitURL;
+ 
+    if (view.Blob && view.URL) {
+        try {
+            new Blob;
+            return;
+        } catch (e) {}
+    }
+ 
+    // Internally we use a BlobBuilder implementation to base Blob off of
+    // in order to support older browsers that only have BlobBuilder
+    var BlobBuilder = view.BlobBuilder || view.WebKitBlobBuilder || view.MozBlobBuilder || (function(view) {
+            var
+                get_class = function(object) {
+                    return Object.prototype.toString.call(object).match(/^\[object\s(.*)\]$/)[1];
+                }
+                , FakeBlobBuilder = function BlobBuilder() {
+                    this.data = [];
+                }
+                , FakeBlob = function Blob(data, type, encoding) {
+                    this.data = data;
+                    this.size = data.length;
+                    this.type = type;
+                    this.encoding = encoding;
+                }
+                , FBB_proto = FakeBlobBuilder.prototype
+                , FB_proto = FakeBlob.prototype
+                , FileReaderSync = view.FileReaderSync
+                , FileException = function(type) {
+                    this.code = this[this.name = type];
+                }
+                , file_ex_codes = (
+                    "NOT_FOUND_ERR SECURITY_ERR ABORT_ERR NOT_READABLE_ERR ENCODING_ERR "
+                    + "NO_MODIFICATION_ALLOWED_ERR INVALID_STATE_ERR SYNTAX_ERR"
+                ).split(" ")
+                , file_ex_code = file_ex_codes.length
+                , real_URL = view.URL || view.webkitURL || view
+                , real_create_object_URL = real_URL.createObjectURL
+                , real_revoke_object_URL = real_URL.revokeObjectURL
+                , URL = real_URL
+                , btoa = view.btoa
+                , atob = view.atob
+ 
+                , ArrayBuffer = view.ArrayBuffer
+                , Uint8Array = view.Uint8Array
+                ;
+            FakeBlob.fake = FB_proto.fake = true;
+            while (file_ex_code--) {
+                FileException.prototype[file_ex_codes[file_ex_code]] = file_ex_code + 1;
+            }
+            if (!real_URL.createObjectURL) {
+                URL = view.URL = {};
+            }
+            URL.createObjectURL = function(blob) {
+                var
+                    type = blob.type
+                    , data_URI_header
+                    ;
+                if (type === null) {
+                    type = "application/octet-stream";
+                }
+                if (blob instanceof FakeBlob) {
+                    data_URI_header = "data:" + type;
+                    if (blob.encoding === "base64") {
+                        return data_URI_header + ";base64," + blob.data;
+                    } else if (blob.encoding === "URI") {
+                        return data_URI_header + "," + decodeURIComponent(blob.data);
+                    } if (btoa) {
+                        return data_URI_header + ";base64," + btoa(blob.data);
+                    } else {
+                        return data_URI_header + "," + encodeURIComponent(blob.data);
+                    }
+                } else if (real_create_object_URL) {
+                    return real_create_object_URL.call(real_URL, blob);
+                }
+            };
+            URL.revokeObjectURL = function(object_URL) {
+                if (object_URL.substring(0, 5) !== "data:" && real_revoke_object_URL) {
+                    real_revoke_object_URL.call(real_URL, object_URL);
+                }
+            };
+            FBB_proto.append = function(data/*, endings*/) {
+                var bb = this.data;
+                // decode data to a binary string
+                if (Uint8Array && (data instanceof ArrayBuffer || data instanceof Uint8Array)) {
+                    var
+                        str = ""
+                        , buf = new Uint8Array(data)
+                        , i = 0
+                        , buf_len = buf.length
+                        ;
+                    for (; i < buf_len; i++) {
+                        str += String.fromCharCode(buf[i]);
+                    }
+                    bb.push(str);
+                } else if (get_class(data) === "Blob" || get_class(data) === "File") {
+                    if (FileReaderSync) {
+                        var fr = new FileReaderSync;
+                        bb.push(fr.readAsBinaryString(data));
+                    } else {
+                        // async FileReader won't work as BlobBuilder is sync
+                        throw new FileException("NOT_READABLE_ERR");
+                    }
+                } else if (data instanceof FakeBlob) {
+                    if (data.encoding === "base64" && atob) {
+                        bb.push(atob(data.data));
+                    } else if (data.encoding === "URI") {
+                        bb.push(decodeURIComponent(data.data));
+                    } else if (data.encoding === "raw") {
+                        bb.push(data.data);
+                    }
+                } else {
+                    if (typeof data !== "string") {
+                        data += ""; // convert unsupported types to strings
+                    }
+                    // decode UTF-16 to binary string
+                    bb.push(unescape(encodeURIComponent(data)));
+                }
+            };
+            FBB_proto.getBlob = function(type) {
+                if (!arguments.length) {
+                    type = null;
+                }
+                return new FakeBlob(this.data.join(""), type, "raw");
+            };
+            FBB_proto.toString = function() {
+                return "[object BlobBuilder]";
+            };
+            FB_proto.slice = function(start, end, type) {
+                var args = arguments.length;
+                if (args < 3) {
+                    type = null;
+                }
+                return new FakeBlob(
+                    this.data.slice(start, args > 1 ? end : this.data.length)
+                    , type
+                    , this.encoding
+                );
+            };
+            FB_proto.toString = function() {
+                return "[object Blob]";
+            };
+            FB_proto.close = function() {
+                this.size = this.data.length = 0;
+            };
+            return FakeBlobBuilder;
+        }(view));
+ 
+    view.Blob = function Blob(blobParts, options) {
+        var type = options ? (options.type || "") : "";
+        var builder = new BlobBuilder();
+        if (blobParts) {
+            for (var i = 0, len = blobParts.length; i < len; i++) {
+                builder.append(blobParts[i]);
+            }
+        }
+        return builder.getBlob(type);
+    };
+}(typeof self !== "undefined" && self || typeof window !== "undefined" && window || this.content || this));

+ 142 - 0
src/assets/excel/Export2Excel.js

@@ -0,0 +1,142 @@
+
+/* eslint-disable */
+require('script-loader!file-saver');
+require('./Blob');
+require('script-loader!xlsx/dist/xlsx.core.min');
+function generateArray(table) {
+    var out = [];
+    var rows = table.querySelectorAll('tr');
+    var ranges = [];
+    for (var R = 0; R < rows.length; ++R) {
+        var outRow = [];
+        var row = rows[R];
+        var columns = row.querySelectorAll('td');
+        for (var C = 0; C < columns.length; ++C) {
+            var cell = columns[C];
+            var colspan = cell.getAttribute('colspan');
+            var rowspan = cell.getAttribute('rowspan');
+            var cellValue = cell.innerText;
+            if (cellValue !== "" && cellValue == +cellValue) cellValue = +cellValue;
+ 
+            //Skip ranges
+            ranges.forEach(function (range) {
+                if (R >= range.s.r && R <= range.e.r && outRow.length >= range.s.c && outRow.length <= range.e.c) {
+                    for (var i = 0; i <= range.e.c - range.s.c; ++i) outRow.push(null);
+                }
+            });
+ 
+            //Handle Row Span
+            if (rowspan || colspan) {
+                rowspan = rowspan || 1;
+                colspan = colspan || 1;
+                ranges.push({s: {r: R, c: outRow.length}, e: {r: R + rowspan - 1, c: outRow.length + colspan - 1}});
+            }
+            ;
+ 
+            //Handle Value
+            outRow.push(cellValue !== "" ? cellValue : null);
+ 
+            //Handle Colspan
+            if (colspan) for (var k = 0; k < colspan - 1; ++k) outRow.push(null);
+        }
+        out.push(outRow);
+    }
+    return [out, ranges];
+};
+ 
+function datenum(v, date1904) {
+    if (date1904) v += 1462;
+    var epoch = Date.parse(v);
+    return (epoch - new Date(Date.UTC(1899, 11, 30))) / (24 * 60 * 60 * 1000);
+}
+ 
+function sheet_from_array_of_arrays(data, opts) {
+    var ws = {};
+    var range = {s: {c: 10000000, r: 10000000}, e: {c: 0, r: 0}};
+    for (var R = 0; R != data.length; ++R) {
+        for (var C = 0; C != data[R].length; ++C) {
+            if (range.s.r > R) range.s.r = R;
+            if (range.s.c > C) range.s.c = C;
+            if (range.e.r < R) range.e.r = R;
+            if (range.e.c < C) range.e.c = C;
+            var cell = {v: data[R][C]};
+            if (cell.v == null) continue;
+            var cell_ref = XLSX.utils.encode_cell({c: C, r: R});
+ 
+            if (typeof cell.v === 'number') cell.t = 'n';
+            else if (typeof cell.v === 'boolean') cell.t = 'b';
+            else if (cell.v instanceof Date) {
+                cell.t = 'n';
+                cell.z = XLSX.SSF._table[14];
+                cell.v = datenum(cell.v);
+            }
+            else cell.t = 's';
+ 
+            ws[cell_ref] = cell;
+        }
+    }
+    if (range.s.c < 10000000) ws['!ref'] = XLSX.utils.encode_range(range);
+    return ws;
+}
+ 
+function Workbook() {
+    if (!(this instanceof Workbook)) return new Workbook();
+    this.SheetNames = [];
+    this.Sheets = {};
+}
+ 
+function s2ab(s) {
+    var buf = new ArrayBuffer(s.length);
+    var view = new Uint8Array(buf);
+    for (var i = 0; i != s.length; ++i) view[i] = s.charCodeAt(i) & 0xFF;
+    return buf;
+}
+ 
+export function export_table_to_excel(id) {
+    var theTable = document.getElementById(id);
+    console.log('a')
+    var oo = generateArray(theTable);
+    var ranges = oo[1];
+ 
+    /* original data */
+    var data = oo[0];
+    var ws_name = "SheetJS";
+    console.log(data);
+ 
+    var wb = new Workbook(), ws = sheet_from_array_of_arrays(data);
+ 
+    /* add ranges to worksheet */
+    // ws['!cols'] = ['apple', 'banan'];
+    ws['!merges'] = ranges;
+ 
+    /* add worksheet to workbook */
+    wb.SheetNames.push(ws_name);
+    wb.Sheets[ws_name] = ws;
+ 
+    var wbout = XLSX.write(wb, {bookType: 'xlsx', bookSST: false, type: 'binary'});
+ 
+    saveAs(new Blob([s2ab(wbout)], {type: "application/octet-stream"}), "test.xlsx")
+}
+ 
+function formatJson(jsonData) {
+    console.log(jsonData)
+}
+export function export_json_to_excel(th, jsonData, defaultTitle) {
+ 
+    /* original data */
+ 
+    var data = jsonData;
+    data.unshift(th);
+    var ws_name = "SheetJS";
+ 
+    var wb = new Workbook(), ws = sheet_from_array_of_arrays(data);
+ 
+ 
+    /* add worksheet to workbook */
+    wb.SheetNames.push(ws_name);
+    wb.Sheets[ws_name] = ws;
+ 
+    var wbout = XLSX.write(wb, {bookType: 'xlsx', bookSST: false, type: 'binary'});
+    var title = defaultTitle || '列表'
+    saveAs(new Blob([s2ab(wbout)], {type: "application/octet-stream"}), title + ".xlsx")
+}

BIN
src/assets/homepageimg/RMS.png


BIN
src/assets/homepageimg/TMS.png


BIN
src/assets/homepageimg/WMS.png


BIN
src/assets/homepageimg/beiji.jpg


BIN
src/assets/homepageimg/contract.png


BIN
src/assets/homepageimg/inward.png


BIN
src/assets/homepageimg/money.png


BIN
src/assets/homepageimg/queue.png


BIN
src/assets/homepageimg/sale.png


BIN
src/assets/homepageimg/statisticalReport.png


BIN
src/assets/homepageimg/微信图片_20211128192004.jpg


BIN
src/assets/img/car.png


BIN
src/assets/img/car1.png


BIN
src/assets/img/down.png


BIN
src/assets/img/empty.jpg


BIN
src/assets/img/end.png


BIN
src/assets/img/image.png


BIN
src/assets/img/min.png


BIN
src/assets/img/start.png


BIN
src/assets/img/vip.png


BIN
src/assets/login/login.jpg


BIN
src/assets/saleSelfMachine/Warranty.png


BIN
src/assets/saleSelfMachine/backgroundImg.jpg


BIN
src/assets/saleSelfMachine/billOfLading.png


BIN
src/assets/saleSelfMachine/scanCode.jpg


BIN
src/assets/saleSelfMachine/ticketChangeDeliveryNote.png


+ 21 - 0
src/components/DilCommonUI/index.js

@@ -0,0 +1,21 @@
+import Table from "./packages/table/index.js";
+import Form from "./packages/form/index.js";
+
+const components = [Table, Form];
+
+const install = function(Vue) {
+  components.forEach(component => {
+    Vue.component(component.name, component);
+  });
+};
+
+if (typeof window !== "undefined" && window.Vue) {
+  install(window.Vue);
+}
+
+export default {
+  version: "0.1.0",
+  install,
+  Table,
+  Form
+};

+ 131 - 0
src/components/DilCommonUI/packages/form/README.md

@@ -0,0 +1,131 @@
+## 通用表单
+
+### 使用说明
+
+``` vue
+<template>
+  <!-- formId 为必传参数 -->
+  <!-- v-model 可以双向绑定表单内容-->
+  <dil-form formId="1" v-model="value"></dil-form>
+</template>
+<script>
+export default {
+  data() {
+    return {
+      // 这个是整个表单所填入的内容对象
+      value: {}
+    };
+  }
+};
+</script>
+```
+
+
+
+### 参数说明
+
+#### formId : 表格的唯一标识
+
+通过最后面的表单编辑器获取
+
+
+
+#### value : 表单所被填写的内容
+
+value 是一个对象,每个键值对代表一个表单项,键是参数名,值是用户所填写的内容
+
+
+
+## 后端接口说明
+
+### 参数说明
+
+#### data:Array 表单数据源
+
+```  javascript
+// 数据数组 包含多组表单数据
+[
+    // 一组表单
+    {
+        id:1,
+        // 当前组的标题
+        label:'',
+        // 当前组所包含的数据
+        list:[{
+            // 标签文本的内容
+            label:'名称',
+            // 属性名称
+            prop:'',
+            // 控件的类型
+            type:'',
+            
+            // 以下属性只要有一个就可以了
+            // radio:单选
+            radio:{
+                // 可选内容
+                list:[{
+                    // 默认值
+                    value:'',
+                    // Radio 的 value
+                    label:'',
+                    // 是否禁用
+                    disabled:false,
+                }],
+                // 可选内容为请求获取时
+                request:{
+                    // 请求地址
+                    url:'',
+                    // 请求方式
+                    method:'get',
+                    // 请求参数 跟在链接后的参数
+                    params:[{}],
+                	// 请求参数 请求体中的参数
+                	data:[{}],
+		        }
+              	// 默认选中值
+              	value:'',
+              },
+    			// checkbox:多选
+                
+                // input:普通的输入框
+                input:{
+                    // 默认值
+                    value:'',
+                    // 输入框占位文本
+                    placeholder:'',  
+                    // 禁用
+                    disabled:false,
+                    // 类型
+                    // text,textarea 和其他 原生 input 的 type 值
+                    type:'',
+                },
+                
+                // select:下拉选择器
+                select:{
+                    // 可选内容
+                    list:[{
+                        // 默认值 
+                        value :'',
+                        // 选项的标签,若不设置则默认与 value 相同
+                        label:'',
+                    }]
+                },
+                
+                // switch:开关
+                // time-picker:时间选择器
+                // date-picker:日期选择器
+                // datetime-picker:时间日期选择器
+                // textarea:多行文本
+            }
+        ]
+    }
+]
+```
+
+
+
+## 相关网站
+
+### 表单编辑器
+
+https://diluitable.steerinfo.com/#/addFormData

+ 21 - 0
src/components/DilCommonUI/packages/form/demo/01_base.vue

@@ -0,0 +1,21 @@
+<template>
+  <!-- formId 为必传参数 -->
+  <!-- v-model 可以双向绑定表单内容-->
+  <!-- @change 也可监听表单内容改变 -->
+  <dil-form formId="1" @change="onChange" v-model="value"></dil-form>
+</template>
+
+<script>
+export default {
+  data() {
+    return {
+      value: {}
+    };
+  },
+  methods: {
+    onChange(val) {
+      console.log(val);
+    }
+  }
+};
+</script>

+ 7 - 0
src/components/DilCommonUI/packages/form/index.js

@@ -0,0 +1,7 @@
+import DilForm from "./src/form";
+
+DilForm.install = function(Vue) {
+  Vue.component(DilForm.name, DilForm);
+};
+
+export default DilForm;

+ 37 - 0
src/components/DilCommonUI/packages/form/src/bsae-item.vue

@@ -0,0 +1,37 @@
+<script>
+export default {
+  name: "BaseItem",
+  model: {
+    prop: "item",
+    event: "change"
+  },
+  props: {
+    item: {
+      default() {
+        return {
+          list: []
+        };
+      }
+    }
+  },
+  data() {
+    return {
+      // 自己的数据对象
+      itemData: {}
+    };
+  },
+  watch: {
+    item: {
+      deep: true,
+      handler(item) {
+        this.change(item);
+      }
+    }
+  },
+  methods: {
+    change(item) {
+      this.$emit("change", item || this.item);
+    },
+  }
+};
+</script>

+ 87 - 0
src/components/DilCommonUI/packages/form/src/common.js

@@ -0,0 +1,87 @@
+import axios from "axios";
+// 是否使用本地测试模式
+const usingLocal = false;
+export default {
+  // 设置表单数据
+  setFormData(data, callback) {
+    const json = JSON.stringify(data);
+    if (usingLocal) {
+      localStorage["form_data"] = json;
+    } else {
+      axios
+        .request({
+          url: "/api/v1/cd/fromData/insert",
+          method: "post",
+          data: {
+            formDataJson: json
+          }
+        })
+        .then(response => {
+          if (response.status == 200) {
+            const d = response.data;
+            if (d.code) {
+              const data = d.data;
+              callback && callback.call(undefined, data);
+            }
+          }
+        });
+    }
+  },
+  // 修改表单数据
+  changeFormData(id, data, callback) {
+    const json = JSON.stringify(data);
+    if (usingLocal) {
+      this.setFormData(data, callback);
+    } else {
+      axios
+        .request({
+          url: "/api/v1/cd/fromData/update",
+          method: "post",
+          data: {
+            formDataJson: json,
+            formDataId: id
+          }
+        })
+        .then(response => {
+          if (response.status == 200) {
+            const d = response.data;
+            if (d.code) {
+              const data = d.data;
+              callback && callback.call(undefined, data);
+            }
+          }
+        });
+    }
+  },
+  // 获取表单数据
+  getFormData(id, callback) {
+    if (usingLocal) {
+      const json = JSON.parse(localStorage["form_data"]);
+      callback && callback.call(undefined, json);
+    } else {
+      if (!id) {
+        alert("表单唯一标识不能为空");
+        return;
+      }
+      axios
+        .request({
+          url: "/api/v1/cd/fromData/" + id,
+          method: "get"
+        })
+        .then(response => {
+          if (response.status == 200) {
+            const d = response.data;
+            if (d.code) {
+              const data = d.data;
+              if (data && data.form_data_json) {
+                const json = JSON.parse(data.form_data_json);
+                callback && callback.call(undefined, json);
+              } else {
+                alert("表单数据不存在,请检查表单id是否正确");
+              }
+            }
+          }
+        });
+    }
+  }
+};

+ 46 - 0
src/components/DilCommonUI/packages/form/src/form-group.vue

@@ -0,0 +1,46 @@
+<template>
+  <div class="preview-group">
+    <template v-if="item.label">
+      <div class="group-title">{{ item.label }}</div>
+      <el-divider></el-divider>
+    </template>
+    <form-item
+      v-for="item in item.list"
+      :key="item.id"
+      :item="item"
+      v-model="data[item.prop]"
+    >
+      <template #prefix>
+        <slot :name="item.prop + ' prefix'"></slot>
+      </template>
+      <template #suffix>
+        <slot :name="item.prop + ' suffix'"></slot>
+      </template>
+      <template #append>
+        <slot :name="item.prop + ' append'"></slot>
+      </template>
+      <template>
+        <slot :name="item.prop"></slot>
+      </template>
+    </form-item>
+    <slot></slot>
+  </div>
+</template>
+
+<script>
+import bsaeItemVue from "./bsae-item.vue";
+import FormItem from "./form-item.vue";
+export default {
+  name: "DilFomrGroup",
+  components: { FormItem },
+  mixins: [bsaeItemVue],
+  props: {
+    // 用户添加表单后提交的数据
+    data: {
+      default() {
+        return {};
+      }
+    }
+  },
+};
+</script>

+ 171 - 0
src/components/DilCommonUI/packages/form/src/form-item.vue

@@ -0,0 +1,171 @@
+<template>
+  <el-form-item :label="item.label || ''">
+    <!-- 单选 -->
+    <template v-if="item.type == 'radio'">
+      <el-radio-group v-model="dataValue">
+        <el-radio
+          v-for="(radio, index) in itemList"
+          :key="'radio_' + index"
+          v-bind="radio"
+          @click="onClick"
+        >
+        </el-radio>
+      </el-radio-group>
+    </template>
+
+    <!-- 多选 -->
+    <template v-else-if="item.type == 'checkbox'">
+      <el-checkbox-group v-model="checkboxValue" @change="onChangeCheck">
+        <el-checkbox
+          v-for="(checkbox, index) in itemList"
+          :key="'checkbox_' + index"
+          v-bind="checkbox"
+        >
+        </el-checkbox>
+      </el-checkbox-group>
+    </template>
+
+    <!-- 输入框 -->
+    <template v-else-if="item.type == 'input'">
+      <el-input v-bind="item.input" v-model="dataValue">
+        <template slot="prefix">
+          <!-- 头部内容 -->
+          <slot name="prefix"></slot>
+        </template>
+        <template #suffix>
+          <!-- 尾部内容 -->
+          <slot name="suffix"></slot>
+        </template>
+        <template #prepend>
+          <!-- 前置内容 -->
+          <slot name="prepend"></slot>
+        </template>
+        <template #append>
+          <!-- 后置内容 -->
+          <slot name="append"></slot>
+        </template>
+      </el-input>
+    </template>
+
+    <!-- 下拉选择框 -->
+    <template v-else-if="item.type == 'select'">
+      <el-select v-bind="item.select" v-model="dataValue">
+        <el-option
+          v-for="(option, index) in itemList"
+          :key="'option_' + index"
+          v-bind="option"
+        >
+        </el-option>
+        <slot></slot>
+        <template #prefix>
+          <!-- 头部内容 -->
+          <slot name="prefix"></slot>
+        </template>
+      </el-select>
+    </template>
+
+    <!-- 开关 -->
+    <template v-else-if="item.type == 'switch'">
+      <el-switch v-bind="item.timePicker" v-model="dataValue"></el-switch>
+    </template>
+
+    <!-- 时间选择器 -->
+    <template v-else-if="item.type == 'timePicker'">
+      <el-time-picker v-bind="item.timePicker" v-model="dataValue">
+      </el-time-picker>
+    </template>
+
+    <!-- 日期选择器 -->
+    <template v-else-if="item.type == 'datePicker'">
+      <el-date-picker
+        v-bind="item.datePicker"
+        :placeholder="item.datePicker.placeholder || '选择日期'"
+        :start-placeholder="item.datePicker.startPlaceholder || '开始日期'"
+        :end-placeholder="item.datePicker.endPlaceholder || '结束日期'"
+        v-model="dataValue"
+        @change="onChangeCheck"
+      >
+      </el-date-picker>
+    </template>
+
+    <!-- 远程搜索 -->
+    <template v-else-if="item.type == 'autocomplete'">
+      <el-autocomplete v-bind="item.autocomplete" v-model="dataValue">
+      </el-autocomplete>
+    </template>
+
+    <slot></slot>
+  </el-form-item>
+</template>
+
+<script>
+import axios from "axios";
+export default {
+  name: "DilFormItem",
+  model: {
+    prop: "itemValue",
+    event: "change",
+  },
+  props: {
+    item: {
+      type: Object,
+      require: true,
+    },
+    itemValue: {
+      default: null,
+    },
+  },
+  data() {
+    return {
+      checkboxValue: [],
+      // 列表内容数组
+      itemList: [],
+    };
+  },
+  created() {
+    const item = this.item;
+    if (item[item.type]) {
+      const sourceType = item[item.type].sourceType;
+      switch (sourceType) {
+        case "request":
+          {
+            const requestObj = item[item.type].request;
+            if (requestObj.url) {
+              axios.request({ ...requestObj }).then((res) => {
+                if (res.status == 200) {
+                  if (res.data.code == 200) {
+                    this.itemList = res.data.data;
+                  }
+                }
+              });
+            }
+          }
+          break;
+        case "list":
+          this.itemList = item[item.type].list.list;
+          break;
+      }
+    }
+  },
+  computed: {
+    dataValue: {
+      get() {
+        return this.itemValue;
+      },
+      set(value) {
+        this.onChange(value);
+      },
+    },
+  },
+  methods: {
+    onChange(value) {
+      this.$emit("change", value);
+    },
+    onChangeCheck(value) {
+      this.dataValue = value;
+    },
+  },
+};
+</script>
+
+<style></style>

+ 67 - 0
src/components/DilCommonUI/packages/form/src/form.vue

@@ -0,0 +1,67 @@
+<template>
+  <el-form v-bind="$attrs" v-on="$listeners" :label-width="labelWidth">
+    <form-group
+      v-for="item in list"
+      :key="item.id"
+      :item="item"
+      :data="value"
+    ></form-group>
+  </el-form>
+</template>
+
+<script>
+import formGroup from "./form-group.vue";
+import Tool from "./common.js";
+export default {
+  name: "DilForm",
+  components: { formGroup },
+  model: {
+    prop: "value",
+    event: "change"
+  },
+  props: {
+    // 用户输入的值
+    value: {
+      default() {
+        return {};
+      }
+    },
+    // 表单唯一标识
+    formId: {
+      default: "",
+      required: true
+    },
+    labelWidth: {
+      default: "auto"
+    }
+  },
+  data() {
+    return {
+      list: []
+    };
+  },
+  created() {
+    if (this.formId) {
+      Tool.getFormData(this.formId, data => (this.list = data));
+    } else {
+      this.$alert("参数缺失 : formId");
+    }
+  },
+  methods: {
+    // 抛出事件
+    change(val) {
+      this.$emit("change", val);
+    }
+  },
+  watch: {
+    value: {
+      deep: true,
+      handler(val) {
+        this.change(val);
+      }
+    }
+  }
+};
+</script>
+
+<style></style>

+ 214 - 0
src/components/DilCommonUI/packages/table/README.md

@@ -0,0 +1,214 @@
+## 通用表格使用说明
+### 属性说明
+
+
+
+#### requestUrl : string
+
+表格请求的地址
+
+示例:
+
+``` js
+//全地址
+requestUrl:http://192.168.10.113:8081/api/v1/truck/type/status2;
+//后半截地址
+requestUrl:/api/v1/truck/type/status2;
+```
+
+
+
+#### requestQuery : object
+
+表格请求的参数:用于自己触发筛选和排序时使用
+
+可传入参数
+
+
+
+
+
+#### current-page : number
+
+当前页数,支持 .sync 修饰符
+
+默认是第一页
+
+
+
+#### page-size : number
+
+每页显示条目个数,支持 .sync 修饰符
+
+默认是 每页十条
+
+
+
+#### page-sizes : number[]
+
+每页显示个数选择器的选项设置
+
+默认是 [1,2,5,10]
+
+
+
+#### type : string
+
+表格类型:目前支持:base , common
+
+之后会根据需求增加更多的类型
+
+
+
+#### lastColumnData : array[object]
+
+表格最右边列的数据信息,数组中是放一个对象,对象中的属性如下,
+
+基本和Table-column Attributes的相同,
+
+``` js
+lastColumnData:[{
+    // 表头显示的文案
+    label: "操作",
+    // 设置列的宽度
+    width: 100,
+    // 固定操作列
+    fixed: 'right',
+    // 注意!!!
+    // 操作列按钮点击触发的操作改为 $emit 抛事件的形式
+    // 默认可以获取 scope 属性;里面的具体内容和el-table一样
+    template: `
+		<el-button type="text" size="mini" @click="$emit('transportProgress',scope.row)" > 
+			运输进度 
+		</el-button>
+	`,
+}]
+```
+
+
+
+
+
+### 事件说明
+
+#### radio-change(row)
+
+用于当选表格,当用户改变选中行数据时调用,返回选中行的数据对象 **row**
+
+用户再次点击取消选中时,会返回一个**空对象 {}**
+
+
+
+#### selection-change(rows)
+
+用于多选表格,当选择项发生变化时会触发该事件
+
+返回所有被选中的行的数据的数组 rows[]
+
+即使换页,依然保留被选中的数据
+
+
+
+### 方法说明
+
+#### refreshData()
+
+用户主动刷新表格数据
+
+
+
+## 接口相关说明
+
+### 请求参数说明
+
+链接后的参数
+
+``` json
+// 表格头接口的唯一标识
+apiId:13
+// 控制当前显示第几页
+pageNum:1
+// 控制当前每页显示几条
+pageSize:10
+```
+
+请求体的参数
+
+``` json
+// 排序的数据的参数字段
+orderField:""
+// 排序类型 asc : 升序;  desc : 降序;
+orderType:""
+
+// 需要筛选时,键值对的键,是需要筛选的参数的字段名,
+// 键值对的值,是个数组,存放符合条件的字段值,
+// 筛选的字段可以同时存在多条
+[筛选字段名]:[筛选字段值1,筛选字段值2]
+```
+
+
+
+### 回调参数要求
+
+``` json
+{
+    // 状态码 0:标识成功
+    "code": "0",
+    // 后端自定义给前端的数据对象
+    "data": {
+        // 表格的数据源
+        "list": [
+            // 每行表的数据内容
+            {
+                // 每行数据的唯一标识 必设项
+                "ROW_ID":"",
+            }
+        ],
+
+        // 表头的数据内容
+        // 表头按需要的显示顺序排序
+        "columnData": [
+            // 每个表头的相关信息
+            // 这个之后会根据需求不断添加
+            {
+                // 唯一标识 必设项
+                "data_id": "",
+                // 对应列内容的字段名 必设项
+                "prop": "",
+                // 显示的标题 必设项
+                "label": "",
+
+                // 一下为 非必填选项
+                // 自定义列模板
+                // html的字符串
+                // 当有这个属性时,会忽略label属性
+                "template": "",
+
+                // 列的宽度 非必填选项
+                "width": "",
+                // 当前列对应的 筛选功能数组 非必填选项
+                "filters":[
+                    {
+                        // 筛选选项 所对应的后端数值
+                        value:0,
+                        // 筛选选项 的中文名称
+                        text:"",
+                    },
+                ],
+            },
+        ],
+        
+        // 总条目数
+        "total": 0
+    }
+}
+```
+
+
+
+## 相关网站说明
+
+### 配置表头数据地址
+
+https://diluitable.steerinfo.com/#/
+

+ 15 - 0
src/components/DilCommonUI/packages/table/demo/01_BaseTable.vue

@@ -0,0 +1,15 @@
+<template>
+  <!-- 基础表格 无另写样式 -->
+  <!-- 在需要显示表格的位置写上标签 -->
+  <!-- 并绑定请求地址的链接 -->
+  <!-- type 默认为 common -->
+  <div>
+    <dilTable
+      requestUrl="/api/v1/td/truck/type/status2?apiId=13"
+      type="base"
+     
+    >
+    </dilTable>
+  </div>
+</template>
+

+ 12 - 0
src/components/DilCommonUI/packages/table/demo/02_CommonTable.vue

@@ -0,0 +1,12 @@
+<template>
+  <!-- 通用表格 包含了通用的表格样式 -->
+  <div>
+    <!-- 在需要显示表格的位置写上标签 -->
+    <!-- 表格请求数据的地址 -->
+    <dilTable
+     
+      requestUrl="/api/v1/td/truck/type/status2?apiId=13"
+    >
+    </dilTable>
+  </div>
+</template>

+ 38 - 0
src/components/DilCommonUI/packages/table/demo/03_OperateTable.vue

@@ -0,0 +1,38 @@
+<template>
+  <!-- 通用表格 包含了通用的表格样式 -->
+  <div class="opertate">
+    <!-- 在需要显示表格的位置写上标签 -->
+    <!-- 传递熟悉建议用 v-bind.sync 的形式传递 -->
+    <!-- 监听事件和平时使用一样 -->
+
+    <dilTable v-bind.sync="option" @transportProgress="transportProgress">
+      <el-table-column label="操作">
+        <template>
+          <el-button type="text" size="mini" @click="transportProgress(scope)">
+            运输进度
+          </el-button>
+        </template>
+      </el-table-column>
+    </dilTable>
+  </div>
+</template>
+
+<script>
+export default {
+  data() {
+    return {
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/td/truck/type/status2?apiId=13"
+      }
+    };
+  },
+  methods: {
+    // 声明操作列事件回调方法
+    // 参数和element table 回调的参数一样
+    transportProgress(scope) {
+      console.log(scope);
+    }
+  }
+};
+</script>

+ 29 - 0
src/components/DilCommonUI/packages/table/demo/04_RadioTable.vue

@@ -0,0 +1,29 @@
+<template>
+  <!-- 单选表格 -->
+  <div class="radio">
+    <!-- 在需要显示表格的位置写上标签 -->
+    <!-- 传递熟悉建议用 v-bind.sync 的形式传递 -->
+    <dilTable v-bind.sync="option" @radio-change="currentRadioChange"></dilTable>
+  </div>
+</template>
+
+<script>
+export default {
+  data() {
+    return {
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/td/truck/type/status2?apiId=13",
+        // 控制显示当选列
+        selectionType: "radio",
+      },
+    };
+  },
+  methods: {
+    currentRadioChange(row) {
+      console.log("当前选中行的数据:");
+      console.log(row);
+    },
+  },
+};
+</script>

+ 29 - 0
src/components/DilCommonUI/packages/table/demo/05_SelectionTable.vue

@@ -0,0 +1,29 @@
+<template>
+  <!-- 单选表格 -->
+  <div class="selection">
+    <!-- 在需要显示表格的位置写上标签 -->
+    <!-- 传递熟悉建议用 v-bind.sync 的形式传递 -->
+    <dilTable v-bind.sync="option" @selection-change="selectionChange"></dilTable>
+  </div>
+</template>
+
+<script>
+export default {
+  data() {
+    return {
+      option: {
+        // 表格请求数据的地址
+        requestUrl: "/api/v1/td/truck/type/status2?apiId=13",
+        // 控制显示多选列
+        selectionType: "select",
+      },
+    };
+  },
+  methods: {
+    selectionChange(selection) {
+      console.log("所有选中行的数据:");
+      console.log(selection);
+    },
+  },
+};
+</script>

+ 36 - 0
src/components/DilCommonUI/packages/table/demo/06_FilterTable.vue

@@ -0,0 +1,36 @@
+<template>
+  <!-- 外部控制筛选 -->
+  <div>
+    <div class="filter_box">
+      <el-input v-model="inputValue" placeholder="请输入内容">车牌号</el-input>
+      <el-button @click="onClick">筛选</el-button>
+    </div>
+
+    <dilTable
+      requestUrl="/api/v1/td/truck/type/status2?apiId=13"
+      :requestQuery="requestQuery"
+    ></dilTable>
+  </div>
+</template>
+
+<script>
+export default {
+  data() {
+    return {
+      inputValue: "",
+      requestQuery: { capacity_number: 0 },
+    };
+  },
+  methods: {
+    onClick() {
+      this.requestQuery.capacity_number = this.inputValue;
+    },
+  },
+};
+</script>
+
+<style>
+.filter_box {
+  display: flex;
+}
+</style>

+ 7 - 0
src/components/DilCommonUI/packages/table/index.js

@@ -0,0 +1,7 @@
+import DilTable from "./src/table.vue";
+
+DilTable.install = function(Vue) {
+  Vue.component(DilTable.name, DilTable);
+};
+
+export default DilTable;

+ 326 - 0
src/components/DilCommonUI/packages/table/src/table.js

@@ -0,0 +1,326 @@
+import Sortablejs from "sortablejs";
+export default {
+  data() {
+    return {
+      // 等数据渲染完了再显示
+      isShow: false,
+      // 自己 请求体 参数
+      dataRequestQuery: {},
+      // 自己的表数据
+      dataTabel: [],
+      // 自己的表头数据
+      dataColumnData: [],
+      // 拖拽的表头数据
+      dataDropColumn: [],
+      // 自己的数据总条数
+      dataTotal: 0,
+      // 自己的当前页面数
+      dataCurrentPage: 1,
+      // 自己的每页显示条目个数
+      dataPageSize: 10,
+      // 保存表格所有页面所选中的数据
+      dataSelection: [],
+      // 保存表格单选的数据 保存数据的id
+      dataRadioId: ""
+    };
+  },
+  created() {
+    this.dataCurrentPage = this.currentPage;
+    this.dataPageSize = this.pageSize;
+    console.log(this)
+    this.requestData();
+  },
+  mounted() {
+    //行拖拽
+    // this.rowDrop();
+    //列拖拽
+    this.columnDrop();
+  },
+  methods: {
+    // 通过请求获取数据
+    requestData(options) {
+      let pageNum = undefined;
+      let pageSize = undefined;
+      
+      if (options) {
+        pageNum = options.pageNum;
+        pageSize = options.pageSize;
+        
+      }
+      
+      if (this.requestUrl) {
+        // 处理请求地址逻辑
+        let url;
+        if (this.requestUrl.indexOf("//") > -1) {
+          url = this.requestUrl;
+        } else {
+          url = this.requestUrl;
+        }
+        // 处理请求地址逻辑
+
+        if (
+          !this.dataTotal ||
+          (this.dataCurrentPage - 1) * this.dataPageSize < this.dataTotal
+        ) {
+          // 判断是否需要在请求体中放入参数
+          if(this.requestQuery){
+            console.log(" 判断是否需要在请求体中放入参数")
+            
+            this.dataRequestQuery=this.requestQuery;
+            console.log(this.dataRequestQuery.resultBreakId)
+          }
+
+          let data = undefined;
+          for (const key in this.dataRequestQuery) {
+         
+            const val = this.dataRequestQuery[key];
+            console.log(val)
+            if (val||val==0) {
+             
+              if (!data) data = {};
+            
+              data[key] = val;
+            }
+          }
+        
+          // 发送请求
+          this.$axios
+            .post(url, data, {
+              // 请求地址 中
+              params: {
+                pageNum: pageNum || this.dataCurrentPage,
+                pageSize: pageSize || this.dataPageSize
+              }
+            })
+            .then(response => {
+              let d = response.data.data;
+              this.dataTabel = d.list;
+              this.dataTotal = d.total;
+              //执行成功的回调
+              this.$emit('func',response.data.data);
+              this.refreshColumnData(d.columnData);
+
+              this.isShow = true;
+            });
+        }
+      } else {
+        console.warn("requestUrl 参数不能为 null");
+      }
+    },
+    // 刷新表头显示数据
+    refreshColumnData(columnData) {
+      // 表头只赋值一次
+      if (this.dataColumnData.length > 0) return;
+
+      // 如果前端有写表头,则加在后端表头前面
+      const d = this.columnData.concat(columnData);
+
+      // 把操作列拼接到最后一列
+      this.dataColumnData = d;
+      this.dataDropColumn = [].concat(this.dataColumnData);
+    },
+    // 排序回调
+    sortChange({ column, prop, order }) {
+      // column : 列的数据
+      // prop : 排序字段参数名
+      // order : 排序方式 (ascending:升序;descending:降序;null:无)
+
+      // 前端排序
+      // const sort = {
+      //   ascending: (a, b) => {
+      //     a[prop] = this.getString(a[prop]);
+      //     b[prop] = this.getString(b[prop]);
+      //     return a[prop].localeCompare(b[prop] || "", 'zh-CN');
+      //   },
+      //   descending: (a, b) => {
+      //     a[prop] = this.getString(a[prop]);
+      //     b[prop] = this.getString(b[prop]);
+      //     return b[prop].localeCompare(a[prop] || "", 'zh-CN')
+      //   },
+      // };
+      // this.dataTabel.sort(sort[order]);
+      // 前端排序
+
+      // 后端排序
+      let s = {
+        ascending: "asc",
+        descending: "desc"
+      };
+
+      let value = {
+        orderType: s[order] || undefined,
+        orderField: order ? prop : undefined
+      };
+
+      this.setDataRequestQuery(value);
+    },
+    // 更新请求参数
+    setDataRequestQuery(value) {
+      let q = this.dataRequestQuery;
+      for (const key in value) {
+        q[key] = value[key];
+      }
+      this.requestData(q);
+      this.$emit("update:requestQuery", q);
+      this.dataRequestQuery = q;
+    },
+    // 格式化字符串
+    getString(str) {
+      if (str != null && str != undefined && str.toString) {
+        return str.toString();
+      } else {
+        return str || "";
+      }
+    },
+    // 当某一行被点击时会触发该事件
+    rowClick(row, column, event) {
+      if (this.selectionType == "radio") {
+        if (this.dataRadioId == row.ROW_ID) {
+          this.dataRadioId = "";
+          row = {};
+        } else {
+          this.dataRadioId = row.ROW_ID;
+        }
+        this.$emit("radio-change", row);
+      }
+    },
+    // 多选的选中行改变回调
+    selectionChange(selection) {
+      this.dataSelection = selection;
+      // 将多选中的数据抛出
+      this.$emit("selection-change", selection);
+    },
+    // 当表格的筛选条件发生变化的时候会触发该事件,
+    // 参数的值是一个对象,对象的 key 是 column 的 columnKey,对应的 value 为用户选择的筛选条件的数组。
+    filterChange(filters) {
+      let value = {};
+      for (const key in filters) {
+        value[key] = filters[key].length > 0 ? filters[key] : undefined;
+      }
+      // 每次筛选时,都默认将页面改为第一页,避免数据过少时,显示没有数据
+      this.currentChange(1, false);
+      this.setDataRequestQuery(value);
+    },
+    // 行拖拽
+    rowDrop() {
+      const tbody = document.querySelector(".el-table__body-wrapper tbody");
+      const _this = this;
+      Sortablejs.create(tbody, {
+        onEnd({ newIndex, oldIndex }) {
+          const currRow = _this.dataTabel.splice(oldIndex, 1)[0];
+          _this.dataTabel.splice(newIndex, 0, currRow);
+        }
+      });
+    },
+    // 列拖拽
+    columnDrop() {
+      const wrapperTr = document.querySelector(".el-table__header-wrapper tr");
+      this.sortablejs = Sortablejs.create(wrapperTr, {
+        animation: 180,
+        delay: 0,
+        handle: ".allowDrag",
+        onEnd: evt => {
+          // 因为序号列和单多选列不在数组中,所以需要进行偏移计算
+          const offset = this.dragColumnOffset;
+          evt.oldIndex -= offset;
+          evt.newIndex -= offset;
+          // 换列
+          const oldItem = this.dataDropColumn[evt.oldIndex];
+          this.dataDropColumn.splice(evt.oldIndex, 1);
+          this.dataDropColumn.splice(evt.newIndex, 0, oldItem);
+        }
+      });
+    },
+    // current-page 改变时会触发
+    currentChange(val, isRequest = true) {
+      this.dataCurrentPage = val;
+      if (isRequest) {
+        this.requestData({ pageNum: val });
+      }
+      // 最后通知父节点页面改变
+      this.$emit("update:current-page", val);
+    },
+    // pageSize 改变时会触发
+    sizeChange(val) {
+      this.dataPageSize = val;
+      this.requestData({});
+      this.$emit("update:size-change", val);
+    }
+  },
+  computed: {
+    // 计算是否使用排序功能
+    dataSortable() {
+      return function (item) {
+        if (item.template) {
+          return false;
+        } else if (item.sortable) {
+          return item.sortable;
+        } else {
+          return this.sortable;
+        }
+      };
+    },
+    // 计算每列的最小宽度
+    dataColumnMinWidth() {
+      return function (item) {
+        let mw = 0;
+        if (this.dataSortable(item)) {
+          // 如果使用排序功能
+          mw += 30;
+        }
+
+        if (item.filters && item.filters.length > 0) {
+          mw += 20;
+        }
+        if (item.label) {
+          mw += item.label.toString().length * 30;
+        }
+        return mw;
+      };
+    },
+    // 计算拖拽列的偏移差
+    dragColumnOffset() {
+      let o = 0;
+      if (this.showIndex) {
+        o++;
+      }
+      if (this.selectionType != "") {
+        o++;
+      }
+      return o;
+    }
+  },
+  watch: {
+    requestQuery: {
+      deep: true,
+      handler(val, oldVal) {
+        let q = this.dataRequestQuery;
+        for (const key in val) {
+          q[key] = val[key] ? val[key] : undefined;
+        }
+
+        this.setDataRequestQuery(q);
+      }
+    }
+  },
+  // 注册组件
+  components: {
+    // 代理组件
+    componentProxy: {
+      props: {
+        html: {
+          default: ""
+        },
+        scope: {
+          default() {
+            return {};
+          }
+        }
+      },
+      template: ``,
+      created() {
+        this.$options.template = this.html;
+      }
+    }
+  }
+};

+ 243 - 0
src/components/DilCommonUI/packages/table/src/table.vue

@@ -0,0 +1,243 @@
+<template>
+  <div class="st-base-table" v-show="isShow">
+    <!-- 表格主体 -->
+    <el-table
+      ref="mainTable"
+      :data="dataTabel"
+      row-key="ROW_ID"
+      :stripe="stripe"
+      :border="border"
+      :row-class-name="rowClassName"
+      :cell-class-name="cellClassName"
+      :height="height"
+      :max-height="maxHeight"
+      :highlight-current-row="highlightCurrentRow"
+      @sort-change="sortChange"
+      @selection-change="selectionChange"
+      @filter-change="filterChange"
+      @row-click="rowClick"
+    >
+      <!-- 多选列 -->
+      <el-table-column
+        v-if="selectionType == 'select'"
+        type="selection"
+        width="50"
+        align="center"
+        fixed="left"
+        :reserve-selection="reserveSelection"
+        :resizable="false"
+      >
+      </el-table-column>
+
+      <!-- 单选 -->
+      <el-table-column
+        v-if="selectionType == 'radio'"
+        width="50"
+        align="center"
+        label="单选"
+        fixed="left"
+        :resizable="false"
+      >
+        <template slot-scope="scope">
+          <el-radio
+            :value="dataRadioId"
+            :label="scope.row.ROW_ID"
+            @click.native.prevent.stop="rowClick(scope.row)"
+          >
+            {{ "" }}
+          </el-radio>
+        </template>
+      </el-table-column>
+
+      <!-- 序号 -->
+      <el-table-column
+        v-if="showIndex"
+        type="index"
+        width="50"
+        label="序号"
+        align="center"
+        fixed="left"
+        :resizable="false"
+      >
+      </el-table-column>
+
+      <!-- 表格列 -->
+      <el-table-column
+        v-for="(item, index) in dataColumnData"
+        :key="item.data_id || 'auto_' + index"
+        v-bind="item"
+        :column-key="dataDropColumn[index].prop"
+        :align="item.align || align"
+        :sortable="dataSortable(item)"
+        :show-overflow-tooltip="item.showOverflowTooltip || showOverflowTooltip"
+        :min-width="item['min-width'] || dataColumnMinWidth(item)"
+        :class-name="item['class-name'] || 'allowDrag'"
+      >
+        <!-- 表格每行的内容 -->
+        <div slot-scope="scope">
+          <!-- 功能位置 -->
+          <component-proxy
+            v-if="item.template"
+            :html="item.template"
+            :scope="scope"
+            v-on="$listeners"
+          >
+          </component-proxy>
+
+          <!-- 文本位置 -->
+          <template v-else>
+            {{ dataTabel[scope.$index][dataDropColumn[index].prop] }}
+          </template>
+        </div>
+      </el-table-column>
+
+      <!-- 默认插槽 -->
+      <slot></slot>
+    </el-table>
+
+    <!-- 分页器 -->
+    <el-pagination
+      v-if="isPagination"
+      :layout="layout"
+      :current-page="dataCurrentPage"
+      :page-sizes="pageSizes"
+      :page-size="dataPageSize"
+      :total="dataTotal"
+      @current-change="currentChange"
+      @size-change="sizeChange"
+    >
+    </el-pagination>
+  </div>
+</template>
+
+<script>
+import table from "./table.js";
+export default {
+  name: "DilTable",
+  extends: table,
+  props: {
+    // 请求地址
+    requestUrl: {
+      default: "",
+    },
+    // 请求参数 请求体中的参数
+    requestQuery: {
+      default() {
+        return {};
+      },
+    },
+    // 表头数据
+    columnData: {
+      default() {
+        return [];
+      },
+    },
+    // 是否显示序号
+    showIndex: {
+      default: true,
+    },
+    // 是否显示选择框
+    // radio : 显示单选框
+    // select : 显示多选框
+    selectionType: {
+      default: "",
+    },
+    // 是否 在数据翻页后保留之前选中的数据(需指定 row-key)
+    reserveSelection: {
+      default: true,
+    },
+    // 是否为斑马纹 table
+    stripe: {
+      default: true,
+    },
+    // Table 的高度,默认为自动高度。
+    // 如果 height 为 number 类型,单位 px;
+    // 如果 height 为 string 类型,则这个高度会设置为 Table 的 style.height 的值,Table 的高度会受控于外部样式。
+    height: {
+      default: null,
+    },
+    // Table 的最大高度。合法的值为数字或者单位为 px 的高度。
+    //sdada
+    maxHeight: {
+      default: null,
+    },
+    // 是否启用排序
+    sortable: {
+      default: "custom",
+    },
+    // 对齐方式 left/center/right
+    align: {
+      default: "center",
+    },
+    // 是否带有纵向边框
+    border: {
+      default: true,
+    },
+    // 是否要高亮当前行
+    highlightCurrentRow: {
+      default: false,
+    },
+    // 当内容过长被隐藏时显示 tooltip
+    showOverflowTooltip: {
+      default: true,
+    },
+    // 行的 className 的回调方法,也可以使用字符串为所有行设置一个固定的 className。
+    rowClassName: {
+      default() {
+        return ({ row, rowIndex }) => "";
+      },
+    },
+    // 单元格的 className 的回调方法,也可以使用字符串为所有单元格设置一个固定的 className。
+    cellClassName: {
+      default() {
+        return ({ row, rowIndex }) => "";
+      },
+    },
+
+    // 是否启用分页器
+    isPagination: {
+      default: true,
+    },
+    // 当前页数,支持 .sync 修饰符
+    currentPage: {
+      default: 1,
+    },
+    // 每页显示个数选择器的选项设置
+    pageSizes: {
+      default() {
+        return [10, 20, 50, 100, 200];
+      },
+    },
+    // 每页显示条目个数,支持 .sync 修饰符
+    pageSize: {
+      default: 10,
+    },
+    //组件布局,子组件名用逗号分隔
+    layout: {
+      default: "total, prev, pager, next, sizes, jumper",
+    },
+  },
+  watch:{
+    requestUrl(){
+      this.refreshData();
+    }
+  },
+  methods: {
+    // 刷新表格数据
+    refreshData() {
+      this.requestData();
+    },
+    toggleRowExpansion(row, expanded) {
+      this.$refs.mainTable.toggleRowExpansion(row, expanded);
+    },
+  },
+};
+</script>
+
+<style lang="scss" scoped>
+@media print {
+  .el-pagination {
+    display: none;
+  }
+}
+</style>

+ 22 - 0
src/views/RMS/app.html

@@ -0,0 +1,22 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+    <meta name="renderer" content="webkit">
+    <meta content="工业互联网平台" name="keywords">
+    <meta content="工业互联网平台" name="description">
+    <title>工业互联网平台</title>
+    <link href="../static/css/common.css" rel="stylesheet"/>
+    <link href="../static/img/favicon.ico" rel="shortcut icon"/>
+    <script src="../static/lib/jquery/jquery.min.js" type="text/javascript"></script>
+    <script src="../static/lib/jquery/jquery.PrintArea.js" type="text/javascript"></script>
+    <script src="../static/lib/qrcode.min.js" type="text/javascript"></script>
+    <script src='../static/lib/XLSX/xlsx.core.min.js' type='text/javascript'></script>
+    <script src="../static/js/common.js" type="text/javascript"></script>
+     
+  </head>
+  <body>
+    <div id="app"></div>
+  </body>
+</html>

+ 86 - 0
src/views/RMS/app.js

@@ -0,0 +1,86 @@
+// The Vue build version to load with the `import` command
+// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
+import Vue from 'vue';
+import App from '@/components/App.vue';
+// include
+import '@/config/include.js';
+
+// 通用store
+import store from '@/store/index.js';
+
+// router
+import router from './router/index.js';
+
+import VueApollo from 'vue-apollo'
+
+import apollo from '@/config/apolloConfig.js'
+
+// 关闭生产模式下给出的提示
+Vue.config.productionTip = false;
+
+Vue.use(VueApollo)
+
+// 注册表格的全局组件
+import DilCommonUI from "./components/DilCommonUI";
+Vue.use(DilCommonUI);
+
+const apolloProvider = new VueApollo({
+    defaultClient: apollo
+})
+
+ //把时间戳改为正常可读的时间
+ export function renderTime(date) {
+  if(date !== null){
+      let dateee = new Date(date).toJSON();
+      return new Date(+new Date(dateee) + 8 * 3600 * 1000).toISOString().replace(/T/g, " ").replace(/\.[\d]{3}Z/, "");
+  }
+  return null;
+}
+//把毫秒数转换分
+export function getDuration(my_time) { 
+  if(my_time !== null){
+      return Math.floor(my_time / 1000 / 60);
+  }
+  return null;
+}
+export function sjTime(orderPlanInTime) {
+  var stringTime = renderTime(orderPlanInTime);
+  var timestamp1 = stringTime.replace(/-/g, "/");
+  return new Date(timestamp1).getTime();
+}
+//验证电话号码
+export function VerifyPhoneNumber(Phone) {
+  var myreg=/^(13[0-9]|14[5|7]|15[0|1|2|3|4|5|6|7|8|9]|18[0|1|2|3|5|6|7|8|9])\d{8}$/;
+  if (!myreg.test(Phone)) {
+      return false;
+  } else {
+      return true;
+  }
+}
+export function isNumber(value) {
+  //验证是否为数字
+  var patrn = /^(-)?\d+(\.\d+)?$/;
+  if (patrn.exec(value) == null || value == "") {
+    return false;
+  } else {
+    return true;
+  }
+}
+export function isIntegerNumber(value) {
+  //验证是否为整数
+  var patrn = /^\+?[1-9][0-9]*$/g;
+  if (patrn.exec(value) == null || value == "") {
+    return false;
+  } else {
+    return true;
+  }
+}
+/* eslint-disable no-new */
+new Vue({
+  el: '#app',
+  router,
+  store,
+  components: { App },
+  provide: apolloProvider.provide(),
+  template: '<App/>'
+});

+ 59 - 0
src/views/RMS/components/addCapacity.vue

@@ -0,0 +1,59 @@
+<template>
+  <!-- 添加运力信息 -->
+  <div class="addWagonLoad">
+    <PageTitle>返回</PageTitle>
+    <el-divider content-position="left">运力信息</el-divider>
+     <div class="form-box" style="margin-right: 10rem">
+        <dil-form :formId="309" v-model="form1" ref="from1"></dil-form>
+      </div>
+    <div class="button-box">
+      <el-button @click="cancel">取消</el-button>
+      <el-button type="primary" @click="makeSure">确定</el-button>
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+//import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      form1: {},
+      // value: undefined,
+     
+    };
+  },
+  mounted() {},
+  methods: {
+     makeSure() {
+       console.log(this.from1)
+       let RmsCapacity={
+         capacityTypeId:this.form1.capacityTypeId,
+         capacityNumber:this.form1.capacityNumber.toUpperCase(),
+         capacityCorlor:this.form1.capacityCorlor,
+         capacityOwneris:this.form1.capacityOwneris,
+         capacityVip:this.form1.capacityVip,
+         capacityBlacklist:this.form1.capacityBlacklist,
+         carrierId:this.form1.carrierId,
+       } 
+      this.$axios
+        .post(
+          "/api/v1/rms/insertCapacity", RmsCapacity
+        )
+        .then((res) => {
+        
+          this.$router.go(-1);
+        });
+    },
+    // 取消
+    cancel() {
+      this.$router.go(-1);
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+
+</style>

+ 88 - 0
src/views/RMS/components/addCarDriver.vue

@@ -0,0 +1,88 @@
+<template>
+  <!-- 添加司机信息 -->
+  <div class="addWagonLoad">
+    <PageTitle>返回</PageTitle>
+    <el-divider content-position="left">司机信息</el-divider>
+     <div class="form-box" style="margin-right: 10rem">
+        <dil-form :formId="311" v-model="form1" ref="from1"></dil-form>
+      </div>
+ <el-upload
+  class="upload-demo"
+  action="https://jsonplaceholder.typicode.com/posts/"
+  :on-preview="handlePreview"
+  :on-remove="handleRemove"
+  :before-remove="beforeRemove"
+  multiple
+  :limit="1"
+  :on-exceed="handleExceed"
+  :file-list="fileList">
+  <el-button size="small" type="primary">点击上传</el-button>
+  <div slot="tip" class="el-upload__tip">只能上传jpg/png文件,且不超过500kb</div>
+</el-upload>     
+    <div class="button-box">
+      <el-button @click="cancel">取消</el-button>
+      <el-button type="primary" @click="makeSure">确定</el-button>
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+//import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      form1: {},
+      value: undefined,
+      fileList: []
+    };
+  },
+  mounted() {},
+  methods: {
+    handleRemove(file, fileList) {
+        console.log(file, fileList);
+      },
+      handlePreview(file) {
+        console.log(file);
+      },
+      handleExceed(files, fileList) {
+        this.$message.warning(`当前限制选择 3 个文件,本次选择了 ${files.length} 个文件,共选择了 ${files.length + fileList.length} 个文件`);
+      },
+      beforeRemove(file, fileList) {
+        return this.$confirm(`确定移除 ${ file.name }?`);
+      },
+     makeSure() {
+       console.log(this.form1);
+      let RmsCarDriver = {
+       driverName:this.form1.driverName,
+       driverSex:this.form1.driverSex,
+       driverAge:this.form1.driverAge,
+       driverIdentityCard:this.form1.driverIdentityCard,
+       driverPhone:this.form1.driverPhone,
+       transportTypeId:this.form1.transportTypeId,
+       carrierId:this.form1.carrierId,
+       driverPermitNo:this.form1.driverPermitNo,
+       driverLicence:this.form1.driverLicence,
+       driverLicence:this.form1.driverLicence,
+       driverLicence:this.form1.driverLicence,
+      }
+      
+      this.$axios
+        .post(
+          "/api/v1/rms/insertCarDriver" , RmsCarDriver
+        )
+        .then((res) => { 
+          this.$router.go(-1);
+        });
+    },
+    // 取消
+    cancel() {
+      this.$router.go(-1);
+    },  
+  },
+};
+</script>
+<style lang='scss' scoped>
+
+</style>

+ 75 - 0
src/views/RMS/components/addCarrier.vue

@@ -0,0 +1,75 @@
+<template>
+  <!-- 添加承运商信息 -->
+  <div class="addWagonLoad">
+    <PageTitle @click="onClick">返回</PageTitle>
+    <el-divider content-position="left">承运商信息</el-divider>
+     <div class="form-box" style="margin-right: 10rem">
+        <dil-form :formId="330" v-model="form1"></dil-form>
+      </div>
+    <div class="button-box">
+      <el-button @click="cancel">取消</el-button>
+      <el-button type="primary" @click="makeSure">确定</el-button>
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+//import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      form1: {},
+      value: undefined,
+      carrierType:{},
+      carrierTransportType:{}
+    };
+  },
+  methods: {
+    onClick(){},
+     makeSure() {
+      console.log(this.form1)
+      let RmsCarrier={
+        carrierName:this.form1.carrierName,
+        carrierTransportCertificate:this.form1.carrierTransportCertificate,
+        carrierBusinessLicense:this.form1.carrierBusinessLicense,
+        carrierBusinessAblelicense:this.form1.carrierBusinessAblelicense,
+        carrierAbbreviation:this.form1.carrierAbbreviation,
+        carrierAddress:this.form1.carrierAddress,
+        registerNo:this.form1.registerNo,
+        carrierBidAreaId:this.form1.carrierBidAreaId,
+        carrierLegalRepresentative:this.form1.carrierLegalRepresentative,
+        registerCapital:this.form1.registerCapital,
+        businessScope:this.form1.businessScope,
+        annualDate:this.form1.annualDate,
+        companyStatusDesc:this.form1.companyStatusDesc,
+        companyTypeDesc:this.form1.companyTypeDesc,
+        operationPeriod:this.form1.operationPeriod,
+        registerDate: sjTime(this.form1.registerDate),
+        registerOrganization:this.form1.registerOrganization,
+        registerAptitudes:this.form1.registerAptitudes,
+        contactsName:this.form1.contactsName,
+        carrierContactNumber:this.form1.carrierContactNumber,
+        carrierType:this.form1.carrierType,
+        carrierTransportType:this.form1.carrierTransportType
+      }
+      this.$axios
+        .post(
+          "/api/v1/rms/insertCarrier",
+           RmsCarrier
+        )
+        .then((res) => {
+          this.$router.go(-1);
+        });
+    },
+    // // 取消
+    cancel() {
+      this.$router.go(-1);
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+
+</style>

+ 132 - 0
src/views/RMS/components/addGatepost.vue

@@ -0,0 +1,132 @@
+<template>
+  <!-- 添加门岗信息 -->
+  <div class="addWagonLoad">
+    <PageTitle>返回</PageTitle>
+    <el-divider content-position="left">门岗信息</el-divider>
+     <div class="form-box" style="margin-right: 10rem">
+       <!-- 287 -->
+        <dil-form :formId="328" v-model="form1" ref="from1">
+        </dil-form>
+    </div>
+    <div class="button-box">
+      <el-button @click="cancel">取消</el-button>
+      <el-button type="primary" @click="makeSure">确定</el-button>
+    </div> 
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+//import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      form1: {},
+      startTime:'',
+      endTime:'',
+      value: undefined,
+      drawer: false,
+      direction: 'btt',
+      materialName:"",
+      gatepostRules:"",
+      inputText:"",
+      entityOutTypeList:{},
+    };
+  },
+  mounted() {},
+  methods: {
+     makeSure() {
+      console.log(this.form1)
+      let RmsGatepost={
+          gatepostName:this.form1.gatepostName,
+          gatepostLongitude:this.form1.gatepostLongitude,
+          gatepostLatitude:this.form1.gatepostLatitude,
+          gatepostPriority:this.form1.gatepostPriority
+      }
+      console.log(mapValue);
+      this.$axios
+        .post(
+          "/api/v1/rms/insertGatepost",
+           RmsGatepost
+        )
+        .then((res) => {
+          this.$router.go(-1);
+        });
+    },
+    // 取消
+    cancel() {
+      this.$router.go(-1);
+    },
+
+    handleClose(done) {
+        done();
+      }
+    }
+};
+</script>
+<style lang='scss' scoped>
+
+</style>
+<style lang='scss' scoped>
+.form-box {
+  padding: 20px 30px;
+  margin-left: 330px;
+}
+.button-box {
+  padding: 20px 30px;
+  margin-left: 460px;
+}
+.btn-left {
+  margin-left: 470px;
+}
+.input {
+  margin-left: 90px;
+}
+.label{
+  margin-left: 445px;
+  margin-bottom: -30px;
+  font: bold;
+  font-size: 1rem;
+  padding-left: -30px;
+  font-family:Arial, Helvetica, sans-serif;
+  margin-bottom:20px;
+} 
+.label2{
+  margin-left: 425px;
+  margin-bottom: -30px;
+  font: bold;
+  font-size: 1rem;
+  font-family:Arial, Helvetica, sans-serif
+}
+.label1{
+  margin-left: 345px;
+  margin-bottom: -30px;
+  font: bold;
+}
+.common{
+  font-weight: 700;
+  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen,
+    Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
+  font-size: 1rem;
+  cursor: default;
+  color: #2c3e50;
+}
+.f1{
+  margin-top: -2.5rem;
+  margin-left: 17.5rem;
+}
+.f11{
+  margin-top: -3rem;
+  
+  // margin-left: 29rem;
+}
+.f2{
+  margin-top: -2.5rem;
+  margin-left: 10.5rem;
+}
+.f3{
+  margin-top: -2.5rem;
+  margin-left: 10.5rem;
+}
+</style>

+ 162 - 0
src/views/RMS/components/addMaterial.vue

@@ -0,0 +1,162 @@
+<template>
+  <!-- 添加物资信息 -->
+  <div class="addWagonLoad">
+    <PageTitle>返回</PageTitle>
+    <el-divider content-position="left">物资信息</el-divider>
+     <div class="form-box" style="margin-right: 10rem">
+        <dil-form :formId="326" v-model="form1" ref="from1"></dil-form>
+      </div>
+        <div class="form-box f1">
+          <el-form :inline="true" :model="formInline" class="demo-form-inline">
+  <el-form-item label="物资种类">
+    <el-input v-model="materialTypeName" disabled>  
+    </el-input>
+  </el-form-item>
+  <el-form-item>
+    <el-button type="primary" @click="drawer = true">浏览</el-button>
+  </el-form-item>
+    </el-form>
+    </div>
+    <el-drawer
+      :visible.sync="drawer"
+      :direction="direction"
+      :before-close="handleClose">
+        <el-input
+            placeholder="请输入内容"
+            v-model="inputText"
+            clearable>
+          </el-input>
+          <el-button type="primary" class="btn" @click="onclick">
+            <i class="el-icon-search"></i>查询
+          </el-button>
+            <div><dilTable v-bind.sync="options" @radio-change="currentRadioChange" ></dilTable></div>
+</el-drawer>
+    <div class="button-box">
+      <el-button @click="cancel">取消</el-button>
+      <el-button type="primary" @click="makeSure">确定</el-button>
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+//import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      form1: {},
+      drawer: false,
+      direction: 'rtl',
+      inputText:"",
+      options:{
+        requestUrl:"/api/v1/rms/getMaterialTypeList?apiId=376",
+        selectionType:"radio",
+        mapList:[]
+      }
+    };
+  },
+  mounted() {},
+  methods: {
+      currentRadioChange(selection){
+      this.mapList=selection,
+      this.materialTypeName=this.mapList.materialTypeName
+    },
+    onclick(){
+      this.options.requestUrl="/api/v1/rms/getMaterialTypeList?apiId=376&con=" +this.inputText;
+    },
+     makeSure() {
+      let RmsMaterial = {
+        materialCode:this.form1.materialCode,
+        materialName:this.form1.materialName,
+        materialSpecification:this.form1.materialSpecification,
+        materialModel:this.form1.materialModel,
+        materialTypeId:this.mapList.materialTypeId,
+        unitOfMeasureId:this.form1.unitOfMeasureId,
+        materialTheoreticalWeight:this.form1.materialTheoreticalWeight,
+      }
+      console.log(RmsMaterial)
+      this.$axios
+        .post(
+          "/api/v1/rms/insertMaterial",
+           RmsMaterial
+        )
+        .then((res) => {
+          this.$router.go(-1);
+        });
+    },
+    // 取消
+    cancel() {
+      this.$router.go(-1);
+    },
+  },
+   handleClose(done) {
+        this.$confirm('确认关闭?')
+          .then(_ => {
+            done();
+          })
+          .catch(_ => {});
+      }
+};
+</script>
+<style lang='scss' scoped>
+.form-box {
+  padding: 20px 30px;
+  margin-left: 330px;
+}
+.button-box {
+  padding: 20px 30px;
+  margin-left: 460px;
+}
+.btn-left {
+  margin-left: 470px;
+}
+.input {
+  margin-left: 90px;
+}
+.label{
+  margin-left: 445px;
+  margin-bottom: -30px;
+  font: bold;
+  font-size: 1rem;
+  padding-left: -30px;
+  font-family:Arial, Helvetica, sans-serif;
+  margin-bottom:20px;
+} 
+.label2{
+  margin-left: 425px;
+  margin-bottom: -30px;
+  font: bold;
+  font-size: 1rem;
+  font-family:Arial, Helvetica, sans-serif
+}
+.label1{
+  margin-left: 345px;
+  margin-bottom: -30px;
+  font: bold;
+}
+.common{
+  font-weight: 700;
+  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen,
+    Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
+  font-size: 1rem;
+  cursor: default;
+  color: #2c3e50;
+}
+.f1{
+  margin-top: -2.5rem;
+  margin-left: 22.3rem;
+}
+.f11{
+  margin-top: -3rem;
+  // margin-left: 29rem;
+}
+.f2{
+  margin-top: -2.5rem;
+  margin-left: 20.7rem;
+}
+.f3{
+  margin-top: -2.5rem;
+  margin-left: 25rem;
+}
+</style>

+ 54 - 0
src/views/RMS/components/addOilPrice.vue

@@ -0,0 +1,54 @@
+<template>
+  <!-- 添加油价信息 -->
+  <div class="addWagonLoad">
+    <PageTitle>返回</PageTitle>
+    <el-divider content-position="left">油价信息</el-divider>
+    <div class="form-box" style="margin-right: 10rem">
+      <dil-form :formId="357" v-model="form1" ref="from1"></dil-form>
+    </div>
+    <div class="button-box">
+      <el-button @click="cancel">取消</el-button>
+      <el-button type="primary" @click="makeSure">确定</el-button>
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+//import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      form1: {},
+      value: undefined,
+    };
+  },
+  mounted() {},
+  methods: {
+    makeSure() {
+      console.log(this.form1);
+      let RmsOilPrice = {
+        priceOilName:this.form1.priceOilName,
+        priceId:this.form1.priceId,
+        priceDate:this.form1.priceDate,
+        priceValue:this.form1.priceValue,
+      }
+      this.$axios
+        .post(
+          "/api/v1/rms/insertOilPrice" , RmsOilPrice
+        )
+        .then((res) => {
+          this.$router.go(-1);
+        });
+    },
+    // 取消
+    cancel() {
+      this.$router.go(-1);
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+
+</style>

+ 59 - 0
src/views/RMS/components/addPersonnel.vue

@@ -0,0 +1,59 @@
+<template>
+  <!-- 添加人员信息 -->
+  <div class="addWagonLoad">
+    <PageTitle>返回</PageTitle>
+    <el-divider content-position="left">人员信息</el-divider>
+     <div class="form-box" style="margin-right: 10rem">
+        <dil-form :formId="325" v-model="form1" ref="from1"></dil-form>
+      </div>
+    <div class="button-box">
+      <el-button @click="cancel">取消</el-button>
+      <el-button type="primary" @click="makeSure">确定</el-button>
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+//import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      form1: {},
+      value: undefined,
+    };
+  },
+  mounted() {},
+  methods: {
+     makeSure() {
+      console.log(this.form1)
+      let RmsPersonnel={
+        personnelId:this.form1.personnelId,
+        personnelJobNumber: this.form1.personnelJobNumber,
+        personnelName: this.form1.personnelName,
+        personnelPost: this.form1.personnelPost,
+        personnelWorkshopid: this.form1.personnelWorkshopid,
+        personnelShifts: this.form1.personnelShifts,
+        departmentId: this.form1.shipperId
+      };
+      console.log(RmsPersonnel)
+      this.$axios
+        .post(
+          "/api/v1/rms/insertPersonnel",
+           RmsPersonnel
+        )
+        .then((res) => {
+          this.$router.go(-1);
+        });
+    },
+    // 取消
+    cancel() {
+      this.$router.go(-1);
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+
+</style>

+ 60 - 0
src/views/RMS/components/addPier.vue

@@ -0,0 +1,60 @@
+<template>
+  <!-- 添加码头信息 -->
+  <div class="addWagonLoad">
+    <PageTitle>返回</PageTitle>
+    <el-divider content-position="left">码头</el-divider>
+     <div class="form-box" style="margin-right: 10rem">
+        <dil-form :formId="272" v-model="form1" ref="from1"></dil-form>
+      </div>
+    <div class="button-box">
+      <el-button @click="cancel">取消</el-button>
+      <el-button type="primary" @click="makeSure">确定</el-button>
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      form1: {},
+      value: undefined,
+    };
+  },
+  mounted() {},
+  methods: {
+     makeSure() {
+        console.log(this.form1)
+    //   let RmsCapacity = {
+          
+    //   };
+       let RmsCapacity=this.form1;
+      console.log(RmsCapacity)
+      if (
+        RmsCapacity.pierName==null||
+        RmsCapacity.portId==null
+        
+      ) this.$message.error("存在空值!");
+      else 
+      this.$axios
+        .post(
+          "/api/v1/rms/insertPier",
+           RmsCapacity
+        )
+        .then((res) => {
+        
+          this.$router.go(-1);
+        });
+    },
+    // 取消
+    cancel() {
+      this.$router.go(-1);
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+
+</style>

+ 61 - 0
src/views/RMS/components/addPort.vue

@@ -0,0 +1,61 @@
+<template>
+  <!-- 添加港口信息 -->
+  <div class="addWagonLoad">
+    <PageTitle>返回</PageTitle>
+    <el-divider content-position="left">港口</el-divider>
+     <div class="form-box" style="margin-right: 10rem">
+        <dil-form :formId="271" v-model="form1" @change="onchange" ref="from1"></dil-form>
+      </div>
+    <div class="button-box">
+      <el-button @click="cancel">取消</el-button>
+      <el-button type="primary" @click="makeSure">确定</el-button>
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+        portName:'',
+      form1: {},
+      value: undefined,
+    };
+  },
+  mounted() {},
+  methods: {                
+     makeSure() {
+        console.log(this.form1)
+    //   let RmsCapacity = {
+          
+    //   };
+       let RmsCapacity=this.form1;
+      console.log(RmsCapacity)
+      if (
+        RmsCapacity.portName==null||
+        RmsCapacity.portTypeId==null
+        
+      ) this.$message.error("存在空值!");
+      else 
+      this.$axios
+        .post(
+          "/api/v1/rms/insertPort",
+           RmsCapacity
+        )
+        .then((res) => {
+        
+          this.$router.go(-1);
+        });
+    },
+    // 取消
+    cancel() {
+      this.$router.go(-1);
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+
+</style>

+ 5 - 0
src/views/RMS/components/addPortStorageYard.vue

@@ -0,0 +1,5 @@
+<template>
+    <div>
+        
+    </div>
+</template>

+ 0 - 0
src/views/RMS/components/addRawMaterialManufacturer.vue


+ 54 - 0
src/views/RMS/components/addRawWarehouse.vue

@@ -0,0 +1,54 @@
+<template>
+  <!-- 添加原料仓库信息 -->
+  <div class="addWagonLoad">
+    <PageTitle>返回</PageTitle>
+    <el-divider content-position="left">原料仓库信息</el-divider>
+     <div class="form-box" style="margin-right: 10rem">
+        <dil-form :formId="315" v-model="form1" ref="from1"></dil-form>
+      </div>
+    <div class="button-box">
+      <el-button @click="cancel">取消</el-button>
+      <el-button type="primary" @click="makeSure">确定</el-button>
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+//import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      form1: {},
+      // value: undefined,
+     
+    };
+  },
+  mounted() {},
+  methods: {
+     makeSure() {
+       console.log(this.from1)
+       let RmsWarehouse = {
+         warehouseName:this.form1.warehouseName, 
+       }
+    //  console.log(this.RmsWarehouse)
+      this.$axios
+        .post(
+          "/api/v1/rms/insertWarehouse", RmsWarehouse
+        )
+        .then((res) => {
+        
+          this.$router.go(-1);
+        });
+    },
+    // 取消
+    cancel() {
+      this.$router.go(-1);
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+
+</style>

+ 59 - 0
src/views/RMS/components/addRmsShipper.vue

@@ -0,0 +1,59 @@
+<template>
+  <!-- 添加托运人信息 -->
+  <div class="addWagonLoad">
+    <PageTitle>返回</PageTitle>
+    <el-divider content-position="left">托运人信息</el-divider>
+     <div class="form-box" style="margin-right: 10rem">
+        <dil-form :formId="323" v-model="form1" ref="from1"></dil-form>
+      </div>
+    <div class="button-box">
+      <el-button @click="cancel">取消</el-button>
+      <el-button type="primary" @click="makeSure">确定</el-button>
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+//import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      form1: {},
+      value: undefined,
+    };
+  },
+  mounted() {},
+  methods: {
+     makeSure() {
+       console.log(this.form1)
+       let RmsShipper={
+        shipperName: this.form1.shipperName,
+        shipperAbbreviation: this.form1.shipperAbbreviation,
+        shipperId:this.form1.shipperId
+      };
+      // let RmsShipper = {
+      //   shipperName: this.from1.shipperName,
+      //   shipperAbbreviation: this.from1.shipperAbbreviation,
+      // };
+      this.$axios
+        .post(
+          "/api/v1/rms/insertShipper",
+           RmsShipper
+
+        )
+        .then((res) => {
+          this.$router.go(-1);
+        });
+    },
+    // 取消
+    cancel() {
+      this.$router.go(-1);
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+
+</style>

+ 56 - 0
src/views/RMS/components/addSupplier.vue

@@ -0,0 +1,56 @@
+<template>
+  <!-- 添加供应商信息 -->
+  <div class="addWagonLoad">
+    <PageTitle>返回</PageTitle>
+    <el-divider content-position="left">原料供应商信息</el-divider>
+     <div class="form-box" style="margin-right: 10rem">
+        <dil-form :formId="320" v-model="form1" ref="from1"></dil-form>
+      </div>
+    <div class="button-box">
+      <el-button @click="cancel">取消</el-button>
+      <el-button type="primary" @click="makeSure">确定</el-button>
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+//import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      form1: {},
+      value: undefined,
+    };
+  },
+  mounted() {},
+  methods: {
+     makeSure() {
+       console.log(this.form1)
+      let RmsSupplier = {
+        supplierName: this.form1.supplierName,
+        supplierAddress: this.form1.supplierAddress,
+        supplierRegisterDate: sjTime(this.form1.supplierRegisterDate),
+        supplierContactsName: this.form1.supplierContactsName,
+        supplierContactNumber: this.form1.supplierContactNumber
+      };
+      this.$axios
+        .post(
+          "/api/v1/rms/insertSupplier",
+           RmsSupplier
+        )
+        .then((res) => {
+          this.$router.go(-1);
+        });
+    },
+    // 取消
+    cancel() {
+      this.$router.go(-1);
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+
+</style>

+ 159 - 0
src/views/RMS/components/addTruckCalculate.vue

@@ -0,0 +1,159 @@
+<template>
+  <!-- 添加汽车衡信息 -->
+  <div class="addWagonLoad">
+    <PageTitle>返回</PageTitle>
+    <el-divider content-position="left">汽车衡信息</el-divider>
+     <div class="form-box" style="margin-right: 10rem">
+        <dil-form :formId="317" v-model="form1" ref="from1">
+        </dil-form>
+    </div>
+  <div class="form-box f1">
+    <el-form :inline="true" :model="formInline" class="demo-form-inline">     
+    </el-form>
+  </div>
+    <el-input
+        placeholder="请输入内容"
+        v-model="inputText"
+        clearable>
+    </el-input>
+          <el-button type="primary" class="btn" @click="onclick">
+            <i class="el-icon-search"></i>物资列表查询
+          </el-button> 
+          <div> <dilTable v-bind.sync="options" @selection-change="selectionChange"></dilTable></div>
+
+    <div class="button-box">
+      <el-button @click="cancel">取消</el-button>
+      <el-button type="primary" @click="makeSure">确定</el-button>
+    </div>
+          
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+//import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      materialName:"",
+      form1: {},
+      checkList:[],
+      inputText:"",
+      options:{
+        // first请求数据的地址
+        requestUrl: "/api/v1/rms/getMaterialList?apiId=351",
+        selectionType: "select",
+         mapList:[]
+        
+      },
+    };
+  },
+  mounted() {},
+  methods: {
+      selectionChange(selection){
+      this.mapList=selection, 
+      console.log(this.mapList) 
+      this.materialName=this.mapList.materialName
+     
+    },
+    onclick(){
+      this.options.requestUrl="/api/v1/rms/getMaterialList?apiId=351&con=" +this.inputText;
+    },
+    
+     makeSure() {
+ 
+       console.log(this.form1) 
+       
+       let rmsTruckCalculate={
+         truckCalculateNumber:this.form1.truckCalculateNumber,   
+         truckCalculateId:this.form1.truckCalculateId,
+         truckCalculateLongitude:this.form1.truckCalculateLongitude,
+         truckCalculateLatitude:this.form1.truckCalculateLatitude,
+         calculateType:this.form1.calculateType,
+         }
+      let map = {
+        mapList:this.mapList,
+        rmsTruckCalculate:rmsTruckCalculate
+      }
+      console.log(map)
+      // console.log(RmsTruckCalculate)
+      this.$axios
+        .post(
+          "/api/v1/rms/insertTruckCalculate",map
+        )
+        .then((res) => {
+        
+          this.$router.go(-1);
+        });
+    },
+   
+    // 取消
+    cancel() {
+      this.$router.go(-1);
+    },
+    
+  },
+};
+</script>
+<style lang='scss' scoped>
+.form-box {
+  padding: 20px 30px;
+  margin-left: 330px;
+}
+.button-box {
+  padding: 20px 30px;
+  margin-left: 460px;
+}
+.btn-left {
+  margin-left: 470px;
+}
+.input {
+  margin-left: 90px;
+}
+.label{
+  margin-left: 445px;
+  margin-bottom: -30px;
+  font: bold;
+  font-size: 1rem;
+  padding-left: -30px;
+  font-family:Arial, Helvetica, sans-serif;
+  margin-bottom:20px;
+} 
+.label2{
+  margin-left: 425px;
+  margin-bottom: -30px;
+  font: bold;
+  font-size: 1rem;
+  font-family:Arial, Helvetica, sans-serif
+}
+.label1{
+  margin-left: 345px;
+  margin-bottom: -30px;
+  font: bold;
+}
+.common{
+  font-weight: 700;
+  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen,
+    Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
+  font-size: 1rem;
+  cursor: default;
+  color: #2c3e50;
+}
+.f1{
+  margin-top: -2.5rem;
+  margin-left: 25rem;
+}
+.f11{
+  margin-top: -3rem;
+  // margin-left: 29rem;
+}
+.f2{
+  margin-top: -2.5rem;
+  margin-left: 20.7rem;
+}
+.f3{
+  margin-top: -2.5rem;
+  margin-left: 25rem;
+}
+</style>

+ 111 - 0
src/views/RMS/components/capacity.vue

@@ -0,0 +1,111 @@
+//资源管理运力
+<template>
+  <div class="capacity">
+    <div class="sache">
+      <el-input
+        placeholder="请输入内容"
+        v-model="textInput"
+        clearable>
+      </el-input>
+      <el-button type="primary" class="btn" @click="onclick">
+        <i class="el-icon-search"></i>查询
+      </el-button>
+       <el-button type="primary" class="btn" @click="toInsert">
+        <i class="el-icon-plus"></i>新增
+      </el-button>
+    </div>
+    <div class="table">
+      <dilTable v-bind.sync="options">
+        <el-table-column fixed="right" label="操作" width="100">
+          <template slot-scope="scope">
+            <el-button
+              type="text"
+              size="small"
+              @click="updateCapacity(scope.row.capacityId)"
+            >
+              修改
+            </el-button>
+            <el-button
+              type="text"
+              size="mini"
+              @click="deleteCapacity(scope)"
+            >
+              删除
+            </el-button>
+          </template>
+        </el-table-column>
+      </dilTable>
+    </div>
+  </div>
+</template>
+<script>
+export default {
+  data(){
+    return{
+     name:"homeworkPath",
+     textInput:"",
+     restaurants: [],
+     options:{
+        // first请求数据的地址
+        requestUrl: "/api/v1/rms/getCapacityList?apiId=336",
+      },
+    }
+  },
+  methods:{
+    onclick(){
+      this.options.requestUrl = "/api/v1/rms/getCapacityList?apiId=336&con=" +this.textInput;
+    },
+     toInsert() {
+      this.$router.push("/resouse/addCapacity");
+
+    },
+    updateCapacity(capacityId){
+      this.$router.push("/resouse/editCapacity/" + capacityId)
+    },
+    deleteCapacity(scope){
+      this.$confirm("是否删除", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+        center: true,
+      })
+        .then(() => {
+          this.$axios
+            .post("/api/v1/rms/deleteCapacity/" + scope.row.capacityId)
+            .then((res) => {
+              if (res.data.code == 200) {
+                this.$message({
+                  type: "success",
+                  message: "删除成功!",
+                });     
+                this.$router.go(0);
+              } else {
+                this.$message({
+                  message: "删除失败",
+                  type: "warning",
+                });
+              }
+            });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "删除操作已取消!",
+          });
+        });
+    },
+    },
+  }
+
+</script>
+
+<style lang="scss" scode>
+.capacity{
+  .sache{
+    height: 80px;
+    display: flex;
+    align-items: center;
+    padding-left: 30px;
+  }
+}
+</style>

+ 114 - 0
src/views/RMS/components/carDriver.vue

@@ -0,0 +1,114 @@
+//资源管理司机
+<template>
+  <div class="carDriver">
+    <div class="sache">
+      <el-input
+        placeholder="请输入内容"
+        v-model="textInput"
+        clearable>
+      </el-input>
+      <el-button type="primary" class="btn"  @click="onclick">
+        <i class="el-icon-search"></i>查询
+      </el-button>
+       <el-button type="primary" class="btn" @click="toInsert">
+        <i class="el-icon-plus"></i>新增
+      </el-button>
+    </div>
+    <div class="table">
+      <dilTable v-bind.sync="options">
+        <el-table-column fixed="right" label="操作" width="100">
+          <template slot-scope="scope">
+            <el-button
+              type="text"
+              size="small"
+              @click="updateCarDriver(scope)"
+            >
+              修改
+            </el-button>
+            <el-button
+              type="text"
+              size="mini"
+              @click="deleteCarDriver(scope)"
+            >
+              删除
+            </el-button>
+          </template>
+        </el-table-column>
+      </dilTable>
+    </div>
+  </div>
+</template>
+<script>
+export default {
+  name:"homeworkPath",
+  data(){
+    return{
+      textInput: "" ,
+      restaurants: [],
+      options:{
+        // first请求数据的地址
+        requestUrl: "/api/v1/rms/getCarDriverList?apiId=339",
+      },
+    }
+  },
+  methods:{
+    onclick(){
+        this.options.requestUrl = "/api/v1/rms/getCarDriverList?apiId=339&con=" +this.textInput;
+      },
+
+     toInsert() {
+      this.$router.push("/resouse/addCarDriver");
+
+    },
+    updateCarDriver(scope){
+      console.log(scope.row.driverId)
+      this.$router.push("/resouse/editCarDriver/"+scope.row.driverId)
+    },
+    deleteCarDriver(scope){
+      this.$confirm("是否删除", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+        center: true,
+      })
+        .then(() => {
+          this.$axios
+            .post("/api/v1/rms/deleteCarDriver/" + scope.row.driverId)
+            .then((res) => {
+              if (res.data.code == 200) {
+                this.$message({
+                  type: "success",
+                  message: "删除成功!",
+                });     
+                this.$router.go(0);
+              } else {
+                this.$message({
+                  message: "删除失败",
+                  type: "warning",
+                });
+              }
+            });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "删除操作已取消!",
+          });
+        });
+    },
+    },
+  
+}
+
+</script>
+
+<style lang="scss" scode>
+.carDriver{
+  .sache{
+    height: 80px;
+    display: flex;
+    align-items: center;
+    padding-left: 30px;
+  }
+}
+</style>

+ 112 - 0
src/views/RMS/components/carrier.vue

@@ -0,0 +1,112 @@
+//资源管理港口
+<template>
+  <div class="steel_inbound">
+    <div class="sache">
+      <el-input
+        placeholder="请输入内容"
+        v-model="inputText"
+        clearable>
+      </el-input>
+      <el-button type="primary" class="btn" @click="onclick">
+        <i class="el-icon-search"></i>查询
+      </el-button>
+       <el-button type="primary" class="btn" @click="toInsert">
+        <i class="el-icon-plus"></i>新增
+      </el-button>
+    </div>
+    <div class="table">
+      <dilTable v-bind.sync="options">
+        <el-table-column fixed="right" label="操作" width="100">
+          <template slot-scope="scope">
+            <el-button
+              type="text"
+              size="small"
+              @click="updateCarrier(scope)"
+            >
+              修改
+            </el-button>
+            <el-button
+              type="text"
+              size="mini"
+              @click="deleteCarrier(scope)"
+            >
+              删除
+            </el-button>
+          </template>
+        </el-table-column>
+      </dilTable>
+    </div>
+  </div>
+</template>
+
+<script>
+export default {
+  data(){
+    return{
+      inputText:"",
+      options:{
+        // first请求数据的地址
+        requestUrl: "/api/v1/rms/getCarrierList?apiId=342",
+      },
+    }
+  },
+  methods:{
+    onclick(){
+      this.options.requestUrl="/api/v1/rms/getCarrierList?apiId=342&con=" + this.inputText;
+      console.log(this.textInput)
+    },
+     toInsert() {
+      this.$router.push("/resouse/addCarrier");
+
+    },
+    updateCarrier(scope){
+      console.log(scope.row.settlementId)
+      this.$router.push("/resouse/editCarrier/"+scope.row.carrierId)
+    },
+    deleteCarrier(scope){
+      this.$confirm("是否删除", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+        center: true,
+      })
+        .then(() => {
+          this.$axios
+            .post("/api/v1/rms/deleteCarrier/" + scope.row.carrierId)
+            .then((res) => {
+              if (res.data.code == 200) {
+                this.$message({
+                  type: "success",
+                  message: "删除成功!",
+                });     
+                this.$router.go(0);
+              } else {
+                this.$message({
+                  message: "删除失败",
+                  type: "warning",
+                });
+              }
+            });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "删除操作已取消!",
+          });
+        });
+    },
+    },
+  }
+
+</script>
+
+<style lang="scss" scode>
+.steel_inbound{
+  .sache{
+    height: 80px;
+    display: flex;
+    align-items: center;
+    padding-left: 30px;
+  }
+}
+</style>

+ 0 - 0
src/views/RMS/components/detailsTruckCalculate.vue


+ 93 - 0
src/views/RMS/components/editCapacity.vue

@@ -0,0 +1,93 @@
+<template>
+  <!-- 修改运力信息 -->
+  <div id="contractDetails">
+    <page-title>编辑</page-title>
+    <div class="main">
+      <span class="text">运力信息</span>
+    </div>
+    <div class="contractTitle">
+      <div class="form-box">
+        <div class="form-one">
+          <dil-form :formId="310" v-model="form1"></dil-form>
+        </div>
+      </div>
+    </div>
+
+    <div class="button-box">
+      <el-button type="primary" @click="onClickConfirm">确认</el-button>
+      <el-button @click="onClickCancel">返回</el-button>
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+//import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      form1: {},
+    };
+  },
+  mounted() {
+      console.log(this.$route)
+    this.information();
+  },
+  methods: {
+    information() {
+      //编辑 
+console.log(this.$route.params)            
+
+      this.$axios
+        .post(
+          "/api/v1/rms/getCapacityById/" +
+            this.$route.params.capacityId
+        )
+
+        .then((res) => {
+            console.log(res.data.data)
+          res.data.data.forEach((e) => {
+            this.form1 = e;
+            console.log(e);
+            console.log(this.form1);
+            console.log( this.$route.params.capacityId);
+          });
+        });
+    },
+    // 返回
+    onClickCancel() {
+      this.$router.go(-1);
+    },
+    // 确认
+    onClickConfirm() {
+      console.log(this.form1)
+       let RmsCapacity={
+         capacityId:this.form1.capacityId,
+         capacityTypeId:this.form1.capacityTypeId,
+         capacityNumber:this.form1.capacityNumber.toUpperCase(),
+         capacityCorlor:this.form1.capacityCorlor,
+         capacityOwneris:this.form1.capacityOwneris,
+         capacityVip:this.form1.capacityVip,
+         capacityBlacklist:this.form1.capacityBlacklist,
+         carrierId:this.form1.carrierId,
+       }  
+        console.log( this.$route.params.capacityId);
+        this.$axios
+          .post(
+            "/api/v1/rms/updateCapacity",
+           RmsCapacity
+          )
+          .then((res) => {
+            if (res.data.code == "200") {
+              this.$router.go(-1);
+            
+            }
+          });
+    },
+  },
+};
+</script>
+<style lang="scss" scoped>
+
+</style>

+ 92 - 0
src/views/RMS/components/editCarDriver.vue

@@ -0,0 +1,92 @@
+<template>
+  <!-- 修改司机信息 -->
+  <div id="contractDetails">
+    <page-title>编辑</page-title>
+    <div class="main">
+      <span class="text">司机信息</span>
+    </div>
+    <div class="contractTitle">
+      <div class="form-box">
+        <div class="form-one">
+          <dil-form :formId="340" v-model="form1"></dil-form>
+        </div>
+      </div>
+    </div>
+
+    <div class="button-box">
+      <el-button type="primary" @click="onClickConfirm">确认</el-button>
+      <el-button @click="onClickCancel">返回</el-button>
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+//import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      form1: {},
+    };
+  },
+  mounted() {
+      console.log(this.$route)
+    this.information();
+  },
+  methods: {
+    information() {
+      //编辑
+      this.$axios
+        .post(
+          "/api/v1/rms/getCarDriverById/" +
+            this.$route.params.driverId
+        )
+        .then((res) => {
+            console.log(res)
+          res.data.data.forEach((e) => {
+            this.form1 = e;
+            console.log(e);
+            console.log(this.form1);
+            console.log(this.$route.params.driverId);
+          });
+        });
+    },
+    // 返回
+    onClickCancel() {
+      this.$router.go(-1);
+    },
+    // 确认
+    onClickConfirm() {
+      console.log(this.form1)
+        let RmsCarDriver = {
+       driverId:this.form1.driverId,
+       driverName:this.form1.driverName,
+       driverSex:this.form1.driverSex,
+       driverAge:this.form1.driverAge,
+       driverIdentityCard:this.form1.driverIdentityCard,
+       driverPhone:this.form1.driverPhone,
+       transportTypeId:this.form1.transportTypeId,
+       carrierId:this.form1.carrierId,
+       driverPermitNo:this.form1.driverPermitNo,
+       driverLicence:this.form1.driverLicence,
+       driverLicence:this.form1.driverLicence,
+       driverLicence:this.form1.driverLicence,
+      }
+        this.$axios
+          .post(
+            "/api/v1/rms/updateCarDriver",
+            RmsCarDriver
+          )
+          .then((res) => {
+            if (res.data.code == "200") {
+              this.$router.go(-1);
+            }
+          });
+    },
+  },
+};
+</script>
+<style lang="scss" scoped>
+
+</style>

+ 103 - 0
src/views/RMS/components/editCarrier.vue

@@ -0,0 +1,103 @@
+<template>
+  <!-- 修改承运商信息 -->
+  <div id="contractDetails">
+    <page-title>编辑</page-title>
+    <div class="main">
+      <span class="text">承运商信息</span>
+    </div>
+    <div class="contractTitle">
+      <div class="form-box">
+        <div class="form-one">
+          <dil-form :formId="330" v-model="form1"></dil-form>
+        </div>
+      </div>
+    </div>
+
+    <div class="button-box">
+      <el-button type="primary" @click="onClickConfirm">确认</el-button>
+      <el-button @click="onClickCancel">返回</el-button>
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+//import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      form1: {},
+    };
+  },
+ 
+  mounted() {
+      console.log(this.$route)
+    this.information();
+  },
+  methods: {
+    information() {
+      //编辑
+      this.$axios
+        .post(
+          "/api/v1/rms/getCarrierById/" +
+            this.$route.params.carrierId
+        )
+        .then((res) => {
+            console.log(res)
+          res.data.data.forEach((e) => {
+            this.form1 = e;
+            console.log(e);
+            console.log(this.form1);
+            console.log(this.$route.params.carrierId);
+          });
+        });
+    },
+    // 返回
+    onClickCancel() {
+      this.$router.go(-1);
+    },
+    // 确认
+    onClickConfirm() {
+      console.log(this.form1)
+       let RmsCarrier={
+        carrierName:this.form1.carrierName,
+        carrierTransportCertificate:this.form1.carrierTransportCertificate,
+        carrierBusinessLicense:this.form1.carrierBusinessLicense,
+        carrierBusinessAblelicense:this.form1.carrierBusinessAblelicense,
+        carrierAbbreviation:this.form1.carrierAbbreviation,
+        carrierAddress:this.form1.carrierAddress,
+        registerNo:this.form1.registerNo,
+        carrierBidAreaId:this.form1.carrierBidArea,
+        carrierLegalRepresentative:this.form1.carrierLegalRepresentative,
+        registerCapital:this.form1.registerCapital,
+        businessScope:this.form1.businessScope,
+        annualDate:this.form1.annualDate,
+        companyStatusDesc:this.form1.companyStatusDesc,
+        companyTypeDesc:this.form1.companyTypeDesc,
+        operationPeriod:this.form1.operationPeriod,
+        registerDate: sjTime(this.form1.registerDate),
+        registerOrganization:this.form1.registerOrganization,
+        registerAptitudes:this.form1.registerAptitudes,
+        contactsName:this.form1.contactsName,
+        carrierContactNumber:this.form1.carrierContactNumber,
+        carrierType:this.form1.carrierType,
+        carrierTransportType:this.form1.carrierTransportType
+      };
+        this.$axios
+          .post(
+            "/api/v1/rms/updateCarrier",
+            RmsCarrier
+          )
+          .then((res) => {
+            if (res.data.code == "200") {
+              this.$router.go(-1);
+            }
+          });
+    },
+  },
+};
+</script>
+<style lang="scss" scoped>
+
+</style>

+ 321 - 0
src/views/RMS/components/editGatepost.vue

@@ -0,0 +1,321 @@
+<template>
+  <!-- 修改门岗信息 -->
+  <div id="contractDetails">
+    <page-title>编辑</page-title>
+    <div class="main">
+      <span class="text">门岗信息</span>
+    </div>
+    <div class="contractTitle">  -->
+      <div class="form-box">
+         <div class="form-one">
+          <dil-form :formId="358" v-model="form1"></dil-form>
+        </div> 
+      </div>
+     </div>
+     <!-- 时间点 -->
+    <div class="form-box f2" >
+        门岗开门时间
+        <el-time-select
+          v-model="rulesGatepostStartTime"
+          :picker-options="{
+            start: '06:00',
+            step: '01:00',
+            end: '20:00'
+          }"
+          placeholder="选择时间"
+          >
+        </el-time-select>
+    </div>
+    <div class="form-box f3">
+      门岗关门时间
+      <el-time-select
+      v-model="rulesGatepostEndTime"
+      :picker-options="{
+        start: '06:00',
+        step: '01:00',
+        end: '20:00'
+      }"
+      placeholder="选择门岗关门时间">
+    </el-time-select>
+    </div>
+    <!-- 原料模态窗口显示 -->
+    <div class="form-box f1">
+      <el-form :inline="true" :model="formInline" class="demo-form-inline">
+        <el-form-item label="物资名称">
+          <el-input v-model="materialTypeName" disabled>  
+          </el-input>
+        </el-form-item>
+        <el-form-item>
+          <el-button type="primary" @click="drawer = true">增加物资种类</el-button>
+        </el-form-item>
+      </el-form>
+    </div>
+    <div>
+      <div class="form-box" style="margin-left: 5rem">
+        <el-button type="primary" @click="makeSure">新增规则</el-button>
+      </div>
+    </div>
+    <el-drawer
+      :visible.sync="drawer"
+      :direction="direction"
+      :before-close="handleClose">
+      <el-input
+        placeholder="请输入内容"
+        v-model="inputText"
+        clearable>
+      </el-input>
+      <el-button type="primary" class="btn" @click="onclick">
+        <i class="el-icon-search"></i>查询
+      </el-button>
+      <div><dilTable v-bind.sync="options2" @radio-change="currentRadioChange" ></dilTable></div>
+      <div class="button-box">
+        <el-button type="primary" @click="makeSure">确定</el-button>
+      </div>
+    </el-drawer>
+    <!-- 规则展示窗口 -->
+    <dilTable v-bind.sync="options1">
+      <el-table-column fixed="right" label="操作" align="center" width="200">
+        <template slot-scope="scope">
+          <el-button
+            type="text"
+            size="mini"
+            @click="deleteclick(scope)">删除</el-button>
+        </template>
+      </el-table-column>
+    </dilTable>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+//import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      form1: {},
+      value: undefined,
+      drawer: false,
+      direction: 'rtl',
+      materialName:"",
+      gatepostRules:"", 
+      rulesGatepostStartTime:"",
+      rulesGatepostEndTime:"",
+      inputText:"",
+      options1:{
+        // first请求数据的地址
+        requestUrl: "/api/v1/rms/getGatepostRulesById/"+this.$route.params.gatepostId+"?apiId=349",
+        selectionType: "radiio",
+        materialList:[]
+      },
+      options2:{
+        requestUrl: "/api/v1/rms/getMaterialList?apiId=351",
+        selectionType:"select",
+        mapList:[]
+      },
+      form1: {},
+    };
+  },
+ 
+  mounted() {
+      console.log(this.$route)
+    this.information();
+  },
+  methods: {
+    deleteclick(scope){
+      this.$confirm("是否删除", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+        center: true,
+      })
+        .then(() => {
+          this.$axios
+            .post("/api/v1/rms/deleteGatepostRules/" + scope.row.rulesId)
+            .then((res) => {
+              if (res.data.code == 200) {
+                this.$message({
+                  type: "success",
+                  message: "删除成功!",
+                });     
+                this.$router.go(0);
+              } else {
+                this.$message({
+                  message: "删除失败",
+                  type: "warning",
+                });
+              }
+            });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "删除操作已取消!",
+          });
+        });
+    },
+    addRules(){
+      
+    },
+    currentRadioChange(selection){
+      this.mapList=selection,
+      console.log(this.mapList)
+      this.materialName=this.mapList.materialName
+    },
+    makeSure() {
+      console.log(this.form1)
+      let gatepost={
+          rulesId:this.form1.rulesId,
+          gatepostName:this.form1.gatepostName,
+          gatepostLongitude:this.form1.gatepostLongitude,
+          gatepostLatitude:this.form1.gatepostLatitude,
+          gatepostPriority:this.form1.gatepostPriority,
+          rulesGatepostStartTime:this.rulesGatepostStartTime,
+          rulesGatepostEndTime:this.rulesGatepostEndTime,
+          vehicleTypeId:this.form1.vehicleTypeId
+        }
+      let entityOutTypeLists={
+          rulesGatepostEntityOutType:this.form1.rulesGatepostEntityOutTypeStr
+        }
+      let material={
+          materialId:this.materialList.materialId,
+          materialName:this.materialList.materialName
+        }
+      let mapValue={
+        gatepost:gatepost,
+        entityOutTypeLists:entityOutTypeLists,
+        material:this.materialList
+      }
+    },
+    onclick(){
+        this.options2.requestUrl =
+        "/api/v1/rms/getMaterialList?apiId=349&con=" +this.inputText;
+    },
+    information() {
+      //编辑
+      this.$axios
+        .post(
+          "/api/v1/rms/getGatepostById/" +
+            this.$route.params.rulesId
+        )
+        .then((res) => {
+            console.log("res111111111111",res)
+          res.data.data.forEach((e) => {
+            this.form1 = e;
+          });
+        });
+    },
+    // 返回
+    onClickCancel() {
+      this.$router.go(-1);
+    },
+    // 确认
+    onClickConfirm() {
+      console.log(this.form1)
+       let gatepost={
+          gatepostName:this.form1.gatepostName,
+          gatepostLongitude:this.form1.gatepostLongitude,
+          gatepostLatitude:this.form1.gatepostLatitude,
+          gatepostPriority:this.form1.gatepostPriority,
+          rulesGatepostStartTime:this.rulesGatepostStartTime,
+          rulesGatepostEndTime:this.rulesGatepostEndTime,
+          vehicleTypeId:this.form1.vehicleTypeId,
+          rulesId:this.form1.rulesId
+        }
+      let entityOutTypeLists={
+          rulesGatepostEntityOutType:this.form1.rulesGatepostEntityOutType
+        }
+      let material={
+          materialId:this.materialList.materialId
+        }
+      let mapValue={
+        gatepost:gatepost,
+        entityOutTypeLists:entityOutTypeLists,
+        material:this.materialList
+      }
+      this.$axios
+          .post(
+            "/api/v1/rms/updateGatepost",
+            mapValue
+          )
+          .then((res) => {
+            if (res.data.code == "200") {
+              this.$router.go(-1);
+          }
+        });
+      },
+      // 取消
+    cancel() {
+      this.$router.go(-1);
+    },
+    handleClose(done) {
+      done();
+    }
+  }
+};
+</script>
+<style lang="scss" scoped>
+
+</style>
+<style lang='scss' scoped>
+.form-box {
+  padding: 20px 30px;
+  margin-left: 330px;
+}
+.button-box {
+  padding: 20px 30px;
+  margin-left: 460px;
+}
+.btn-left {
+  margin-left: 470px;
+}
+.input {
+  margin-left: 90px;
+}
+.label{
+  margin-left: 445px;
+  margin-bottom: -30px;
+  font: bold;
+  font-size: 1rem;
+  padding-left: -30px;
+  font-family:Arial, Helvetica, sans-serif;
+  margin-bottom:20px;
+} 
+.label2{
+  margin-left: 425px;
+  margin-bottom: -30px;
+  font: bold;
+  font-size: 1rem;
+  font-family:Arial, Helvetica, sans-serif
+}
+.label1{
+  margin-left: 345px;
+  margin-bottom: -30px;
+  font: bold;
+}
+.common{
+  font-weight: 700;
+  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen,
+    Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
+  font-size: 1rem;
+  cursor: default;
+  color: #2c3e50;
+}
+.f1{
+  margin-top: -2.5rem;
+  margin-left: 17.5rem;
+}
+.f11{
+  margin-top: -3rem;
+  
+  // margin-left: 29rem;
+}
+.f2{
+  margin-top: -2.5rem;
+  margin-left: 20.0rem;
+}
+.f3{
+  margin-top: -2.5rem;
+  margin-left: 20.0rem;
+}
+</style>

+ 93 - 0
src/views/RMS/components/editMaterial.vue

@@ -0,0 +1,93 @@
+<template>
+  <!-- 修改物资信息 -->
+  <div id="contractDetails">
+    <page-title>编辑</page-title>
+    <div class="main">
+      <span class="text">物资信息</span>
+    </div>
+    <div class="contractTitle">
+      <div class="form-box">
+        <div class="form-one">
+          <dil-form :formId="314" v-model="form1"></dil-form>
+        </div>
+      </div>
+    </div>
+    
+    <div class="button-box">
+      <el-button type="primary" @click="onClickConfirm">确认</el-button>
+      <el-button @click="onClickCancel">返回</el-button>
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+//import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      form1: {},
+    };
+  },
+ 
+  mounted() {
+      console.log(this.$route)
+    this.information();
+  },
+  methods: {  
+    information() {
+      //编辑
+      this.$axios
+        .post(
+          "/api/v1/rms/getMaterialById/" +
+            this.$route.params.materialId
+        )
+        .then((res) => {
+            console.log(res)
+          res.data.data.forEach((e) => {
+            this.form1 = e;
+            console.log(e);
+            console.log(this.form1);
+            console.log(this.$route.params.materialId);
+          });
+        });
+    },
+    // 返回
+    onClickCancel() {
+      this.$router.go(-1);
+    },
+    // 确认
+    onClickConfirm() {
+      console.log(this.form1)
+      let RmsMaterial = {
+        materialId:this.form1.materialId,
+        materialCode:this.form1.materialCode,
+        materialName:this.form1.materialName,
+        materialSpecification:this.form1.materialSpecification,
+        materialModel:this.form1.materialModel,
+        materialTypeId:this.form1.materialTypeId,
+        unitOfMeasureId:this.form1.unitOfMeasureId,
+        materialTheoreticalWeight:this.form1.materialTheoreticalWeight,
+      };
+        this.$axios
+          .post(
+            "/api/v1/rms/updateMaterial",
+            RmsMaterial
+          )
+          .then((res) => {
+            if (res.data.code == "200") {
+              this.$router.go(-1);
+            }
+          });
+    },
+  },
+    // 取消
+    cancel() {
+      this.$router.go(-1);
+    },
+};
+</script>
+<style lang='scss' scoped>
+
+</style>

+ 86 - 0
src/views/RMS/components/editOilPrice.vue

@@ -0,0 +1,86 @@
+<template>
+  <!-- 修改油价信息 -->
+  <div id="contractDetails">
+    <page-title>编辑</page-title>
+    <div class="main">
+      <span class="text">油价信息</span>
+    </div>
+    <div class="contractTitle">
+      <div class="form-box">
+        <div class="form-one">
+          <dil-form :formId="356" v-model="form1"></dil-form>
+        </div>
+      </div>
+    </div>
+
+    <div class="button-box">
+      <el-button type="primary" @click="onClickConfirm">确认</el-button>
+      <el-button @click="onClickCancel">返回</el-button>
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+//import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      form1: {},
+    };
+  },
+
+  mounted() {
+    console.log(this.$route)
+    this.information();
+  },
+  methods: {
+    information() {
+      //编辑
+      this.$axios
+        .post(
+          "/api/v1/rms/getOilPriceById/" +
+          this.$route.params.priceId
+        )
+        .then((res) => {
+          console.log(res)
+          res.data.data.forEach((e) => {
+            this.form1 = e;
+            console.log(e);
+            console.log(this.form1);
+            console.log(this.$route.params.priceId);
+          });
+        });
+    },
+    // 返回
+    onClickCancel() {
+      this.$router.go(-1);
+    },
+    // 确认
+    onClickConfirm() {
+      console.log(this.form1)
+      let RmsOilPrice = {
+        priceId:this.form1.priceId,
+        priceDate:this.form1.priceDate,
+        priceValue:this.form1.priceValue,
+        priceOilName:this.form1.priceOilName,
+
+      };
+      this.$axios
+        .post(
+          "/api/v1/rms/updateOilPrice",
+          RmsOilPrice
+        )
+        .then((res) => {
+          if (res.data.code == "200") {
+            this.$router.go(-1);
+          }
+        });
+    },
+  },
+};
+</script>
+<style lang="scss" scoped>
+
+</style>

+ 86 - 0
src/views/RMS/components/editPersonnel.vue

@@ -0,0 +1,86 @@
+<template>
+  <!-- 修改人员信息 -->
+  <div id="contractDetails">
+    <page-title>编辑</page-title>
+    <div class="main">
+      <span class="text">人员信息</span>
+    </div>
+    <div class="contractTitle">
+      <div class="form-box">
+        <div class="form-one">
+          <dil-form :formId="324" v-model="form1"></dil-form>
+        </div>
+      </div>
+    </div>
+
+    <div class="button-box">
+      <el-button type="primary" @click="onClickConfirm">确认</el-button>
+      <el-button @click="onClickCancel">返回</el-button>
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+//import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      form1: {},
+    };
+  },
+  mounted() {
+    this.information();
+  },
+  methods: {
+    information() {
+      //编辑 
+   console.log(this.$route.params)
+      this.$axios
+        .post(
+            "/api/v1/rms/getPersonnelById/" +
+               this.$route.params.personnelId
+        )
+         
+        .then((res) => {
+         console.log(res.data.data)
+          res.data.data.forEach((e) => {
+            this.form1 = e;
+          });
+        });
+    },
+    // 返回
+    onClickCancel() {
+      this.$router.go(-1);
+    },
+    // 确认
+    onClickConfirm() {
+      console.log(this.form1)
+       let RmsPersonnel={
+         personnelId:this.form1.personnelId,
+         personnelJobNumber: this.form1.personnelJobNumber,
+         personnelName: this.form1.personnelName,
+         personnelPost: this.form1.personnelPost,
+         personnelWorkshopid: this.form1.personnelWorkshopid,
+         personnelShifts: this.form1.personnelShifts,
+         shipperId: this.form1.shipperId,
+       }  
+        this.$axios
+          .post(
+            "/api/v1/rms/updatePersonnel",
+            RmsPersonnel
+          )
+          .then((res) => {
+            if (res.data.code == "200") {
+              this.$router.go(-1);
+            
+            }
+          });
+    },
+  },
+};
+</script>
+<style lang="scss" scoped>
+
+</style>

+ 0 - 0
src/views/RMS/components/editPier.vue


+ 0 - 0
src/views/RMS/components/editPortStorageYard.vue


+ 0 - 0
src/views/RMS/components/editRawMaterialManufacturer.vue


+ 79 - 0
src/views/RMS/components/editRawWarehouse.vue

@@ -0,0 +1,79 @@
+<template>
+  <!-- 修改原料仓库信息 -->
+  <div id="contractDetails">
+    <page-title>编辑</page-title>
+    <div class="main">
+      <span class="text">原料仓库信息</span>
+    </div>
+    <div class="contractTitle">
+      <div class="form-box">
+        <div class="form-one">
+          <dil-form :formId="355" v-model="form1"></dil-form>
+        </div>
+      </div>
+    </div>
+
+    <div class="button-box">
+      <el-button type="primary" @click="onClickConfirm">确认</el-button>
+      <el-button @click="onClickCancel">返回</el-button>
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+//import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      form1: {},
+    };
+  },
+  mounted() {
+      console.log(this.$route)
+    this.information();
+  },
+  methods: {
+    information() {
+      //编辑
+      this.$axios
+        .post(
+          "/api/v1/rms/getWarehouseById/" +
+            this.$route.params.warehouseId
+        )
+        .then((res) => {
+            console.log(res.data.data)
+          res.data.data.forEach((e) => {
+            this.form1 = e;
+            console.log(e);
+            console.log(this.form1);
+            console.log(this.$route.params.warehouseId);
+          });
+        });
+    },
+    // 返回
+    onClickCancel() {
+      this.$router.go(-1);
+    },
+    // 确认
+    onClickConfirm() {
+      console.log(this.form1)
+       let RmsWarehouse=this.form1;
+        this.$axios
+          .post(
+            "/api/v1/rms/updateWarehouse",
+           RmsWarehouse 
+          )
+          .then((res) => {
+            if (res.data.code == "200") {
+              this.$router.go(-1);
+            }
+          });
+    },
+  },
+};
+</script>
+<style lang="scss" scoped>
+
+</style>

+ 84 - 0
src/views/RMS/components/editRmsShipper.vue

@@ -0,0 +1,84 @@
+<template>
+  <!-- 修改托运人信息 -->
+  <div id="contractDetails">
+    <page-title>编辑</page-title>
+    <div class="main">
+      <span class="text">托运人信息</span>
+    </div>
+    <div class="contractTitle">
+      <div class="form-box">
+        <div class="form-one">
+          <dil-form :formId="322" v-model="form1"></dil-form>
+        </div>
+      </div>
+    </div>
+
+    <div class="button-box">
+      <el-button type="primary" @click="onClickConfirm">确认</el-button>
+      <el-button @click="onClickCancel">返回</el-button>
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+//import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      form1: {},
+    };
+  },
+ 
+  mounted() {
+      console.log(this.$route)
+    this.information();
+  },
+  methods: {
+    information() {
+      //编辑
+      this.$axios
+        .post(
+          "/api/v1/rms/getShipperById/" +
+            this.$route.params.shipperId
+        )
+        .then((res) => {
+            console.log(res)
+          res.data.data.forEach((e) => {
+            this.form1 = e;
+            console.log(e);
+            console.log(this.form1);
+            console.log(this.$route.params.resultId);
+          });
+        });
+    },
+    // 返回
+    onClickCancel() {
+      this.$router.go(-1);
+    },
+    // 确认
+    onClickConfirm() {
+      console.log(this.form1)
+       let RmsShipper={
+        shipperId:this.form1.shipperId,
+        shipperName: this.form1.shipperName,
+        shipperAbbreviation: this.form1.shipperAbbreviation
+      };
+        this.$axios
+          .post(
+            "/api/v1/rms/updateShipper",
+            RmsShipper
+          )
+          .then((res) => {
+            if (res.data.code == "200") {
+              this.$router.go(-1);
+            }
+          });
+    },
+  },
+};
+</script>
+<style lang="scss" scoped>
+
+</style>

+ 88 - 0
src/views/RMS/components/editSupplier.vue

@@ -0,0 +1,88 @@
+<template>
+  <!-- 修改供应商信息 -->
+  <div id="contractDetails">
+    <page-title>编辑</page-title>
+    <div class="main">
+      <span class="text">供应商信息</span>
+    </div>
+    <div class="contractTitle">
+      <div class="form-box">
+        <div class="form-one">
+          <dil-form :formId="321" v-model="form1"></dil-form>
+        </div>
+      </div>
+    </div>
+
+    <div class="button-box">
+      <el-button type="primary" @click="onClickConfirm">确认</el-button>
+      <el-button @click="onClickCancel">返回</el-button>
+    </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+//import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      form1: {},
+    };
+  },
+ 
+  mounted() {
+      console.log(this.$route)
+    this.information();
+  },
+  methods: {
+    information() {
+      console.log("supplierId",this.$router.params);
+      //编辑
+      this.$axios
+        .post(
+          "/api/v1/rms/getSupplierById/" +
+            this.$route.params.supplierId
+        )
+        .then((res) => {
+            console.log(res)
+          res.data.data.forEach((e) => {
+            this.form1 = e;
+            console.log(e);
+            console.log(this.form1);
+            console.log(this.$route.params.supplierId);
+          });
+        });
+    },
+    // 返回
+    onClickCancel() {
+      this.$router.go(-1);
+    },
+    // 确认
+    onClickConfirm() {
+      console.log(this.form1)
+       let RmsSupplier={
+        supplierId: this.form1.supplierId,
+        supplierName: this.form1.supplierName,
+        supplierAddress: this.form1.supplierAddress,
+        supplierRegisterDate: sjTime(this.form1.supplierRegisterDate),
+        supplierContactsName: this.form1.supplierContactsName,
+        supplierContactNumber: this.form1.supplierContactNumber
+      };
+        this.$axios
+          .post(
+            "/api/v1/rms/updateSupplier",
+            RmsSupplier
+          )
+          .then((res) => {
+            if (res.data.code == "200") {
+              this.$router.go(-1);
+            }
+          });
+    },
+  },
+};
+</script>
+<style lang="scss" scoped>
+
+</style>

+ 271 - 0
src/views/RMS/components/editTruckCalculate.vue

@@ -0,0 +1,271 @@
+<template>
+  <!-- 修改汽车衡信息 -->
+  <div id="contractDetails">
+    <page-title>编辑</page-title>
+    <div class="main">
+      <span class="text">汽车衡信息</span>
+    </div>
+    <div class="contractTitle">
+      <div class="form-box">
+        <div class="form-one">
+          <dil-form :formId="354" v-model="form1"></dil-form>
+        </div>
+      </div>
+        <div class="form-box f1">
+          <el-form :inline="true" :model="formInline" class="demo-form-inline">
+  <el-form-item label="物资名称">
+    <el-input v-model="materialTypeName" disabled>  
+    </el-input>
+  </el-form-item>
+  <el-form-item>
+    <el-button type="primary" @click="drawer = true">增加物资种类</el-button>
+  </el-form-item>
+    </el-form>
+    </div>
+    <el-drawer
+      :visible.sync="drawer"
+      :direction="direction"
+      :before-close="handleClose">
+        <el-input
+            placeholder="请输入内容"
+            v-model="inputText"
+            clearable>
+          </el-input>
+          <el-button type="primary" class="btn" @click="onclick">
+            <i class="el-icon-search"></i>查询
+          </el-button>
+            <div><dilTable v-bind.sync="option2" @radio-change="currentRadioChange" ></dilTable></div>
+              <div class="button-box">
+      <el-button type="primary" @click="makeSure">确定</el-button>
+    </div>
+</el-drawer>
+      <dilTable v-bind.sync="option1">
+      <el-table-column fixed="right" label="操作" align="center" width="200">
+        <template slot-scope="scope">
+          <el-button
+            type="text"
+            size="mini"
+            @click="deleteclick(scope)"
+            >删除</el-button
+          >
+        </template>
+      </el-table-column>
+    </dilTable>
+       <div class="button-box">
+      <el-button type="primary" @click="onClickConfirm">确认</el-button>
+      <el-button @click="onClickCancel">返回</el-button>
+    </div>  
+  </div>
+  </div>
+</template>
+
+<script>
+import PageTitle from "@/components/Page/Title";
+//import { sjTime } from "@/js/sharedJsFile";
+export default {
+  components: { PageTitle },
+  data() {
+    return {
+      materialName: {},
+      form1: {},
+      drawer: false,
+      direction: 'rtl',
+      inputText:"",
+      option1:{
+        // first请求数据的地址
+        requestUrl: "/api/v1/rms/getCalculateOfMaterialList?apiId=379&truckCalculateId="+this.$route.params.truckCalulateId,
+        
+      },
+      option2:{
+        requestUrl:"/api/v1/rms/getMaterialList?apiId=351",
+        selectionType:"radio",
+        mapList:[]
+      }
+    };
+  },
+  mounted() {
+      console.log(this.$route)
+    this.information();
+  },
+  methods: {
+   currentRadioChange(selection){
+      this.mapList=selection,
+      console.log(this.mapList)
+      this.materialName=this.mapList.materialName
+    },
+    // onclick(){
+    //   this.options.requestUrl="/api/v1/rms/getMaterialList?apiId=351&con=" +this.inputText;
+    // },
+    information() {
+      //编辑 
+   console.log(this.$route.params)            
+   console.log("truckCalculateId",this.$route.params.truckCalulateId);  
+      this.$axios
+        .post(
+          "/api/v1/rms/getTruckCalculateById/" +
+            this.$route.params.truckCalulateId
+        )
+
+        .then((res) => {
+            console.log(res.data.data)
+          res.data.data.forEach((e) => {
+            this.form1 = e;
+            console.log(e);
+            console.log(this.form1);
+            console.log( this.$route.params.truckCalculateId);
+          });
+        });
+    },
+    onclick(){
+      this.option2.requestUrl="/api/v1/rms/getMaterialList?apiId=351&con=" +this.inputText;
+    },
+    // 返回
+    onClickCancel() {
+      this.$router.go(-1);
+    },
+    // 修改汽车衡
+    onClickConfirm() {
+      console.log(this.form1)
+          let map={
+         truckCalculateNumber:this.form1.truckCalculateNumber,
+         truckCalculateId:this.form1.truckCalculateId,
+         truckCalculateStatus:this.form1.truckCalculateStatus,
+         truckCalculateLongitude:this.form1.truckCalculateLongitude,
+         truckCalculateLatitude:this.form1.truckCalculateLatitude,
+         calculateType:this.form1.calculateType,
+       }
+    
+        this.$axios
+          .post(
+            "/api/v1/rms/updateTruckCalculate",
+          map
+          )
+          .then((res) => {
+            if (res.data.code == "200") {
+              this.$router.go(-1);
+            }
+          });
+    },
+//增加汽车衡的物资
+makeSure() {
+      let rmsTruckCalculateMaterial = {
+        truckCalculateId:this.form1.truckCalculateId,
+        materialId:this.mapList.materialId,
+      }
+
+      this.$axios
+        .post(
+          "/api/v1/rms/insertTruckCalculateOfMaterial",
+           rmsTruckCalculateMaterial
+        )
+        .then((res) => {
+          if (res.data.code == 200) {
+                this.$message({
+                  type: "success",
+                  message: "添加成功!",
+                });     
+                this.$router.go(0);
+              }
+        });
+    },
+
+     deleteclick(scope){
+      this.$confirm("是否删除", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+        center: true,
+      })
+        .then(() => {
+          this.$axios
+            .post("/api/v1/rms/deleteTruckCalculateMaterial/" + scope.row.truckCalculateMaterialId)
+            .then((res) => {
+              if (res.data.code == 200) {
+                this.$message({
+                  type: "success",
+                  message: "删除成功!",
+                });     
+                this.$router.go(0);
+              } else {
+                this.$message({
+                  message: "删除失败",
+                  type: "warning",
+                });
+              }
+            });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "删除操作已取消!",
+          });
+        });
+    },
+ // 取消
+    cancel() {
+      this.$router.go(-1);
+    },
+  },
+};
+</script>
+<style lang='scss' scoped>
+.form-box {
+  padding: 20px 30px;
+  margin-left: 330px;
+}
+.button-box {
+  padding: 20px 30px;
+  margin-left: 460px;
+}
+.btn-left {
+  margin-left: 470px;
+}
+.input {
+  margin-left: 90px;
+}
+.label{
+  margin-left: 445px;
+  margin-bottom: -30px;
+  font: bold;
+  font-size: 1rem;
+  padding-left: -30px;
+  font-family:Arial, Helvetica, sans-serif;
+  margin-bottom:20px;
+} 
+.label2{
+  margin-left: 425px;
+  margin-bottom: -30px;
+  font: bold;
+  font-size: 1rem;
+  font-family:Arial, Helvetica, sans-serif
+}
+.label1{
+  margin-left: 345px;
+  margin-bottom: -30px;
+  font: bold;
+}
+.common{
+  font-weight: 700;
+  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen,
+    Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
+  font-size: 1rem;
+  cursor: default;
+  color: #2c3e50;
+}
+.f1{
+  margin-top: -2.5rem;
+  margin-left: 22.3rem;
+}
+.f11{
+  margin-top: -3rem;
+  // margin-left: 29rem;
+}
+.f2{
+  margin-top: -2.5rem;
+  margin-left: 20.7rem;
+}
+.f3{
+  margin-top: -2.5rem;
+  margin-left: 25rem;
+}
+</style>

+ 112 - 0
src/views/RMS/components/gatepost.vue

@@ -0,0 +1,112 @@
+<!--管理门岗信息-->
+<template>
+  <div class="steel_inbound">
+    <div class="sache">
+      <el-input
+        placeholder="请输入内容"
+        v-model="inputText"
+        clearable>
+      </el-input>
+      <el-button type="primary" class="btn" @click="onclick">
+        <i class="el-icon-search"></i>查询
+      </el-button>
+       <el-button type="primary" class="btn" @click="toInsert">
+        <i class="el-icon-plus"></i>新增
+      </el-button>
+    </div>
+    <div class="table">
+      <dilTable v-bind.sync="options">
+        <el-table-column fixed="right" label="操作" width="100">
+          <template slot-scope="scope">
+            <el-button
+              type="text"
+              size="mini"
+              @click="updateGatepostRules(scope)"
+            >
+              详细
+            </el-button>
+            <el-button
+              type="text"
+              size="small"
+              @click="deleteGatepost(scope)"
+            >
+              删除
+            </el-button>
+          </template>
+        </el-table-column>
+      </dilTable>
+    </div>
+  </div>
+</template>
+
+<script>
+export default {
+  data(){
+    return{
+      inputText:"",
+      options:{
+        // first请求数据的地址
+        requestUrl: "/api/v1/rms/getGatepostList?apiId=347",
+      },
+    }
+  },
+  methods:{
+    onclick(){
+      this.options.requestUrl="/api/v1/rms/getGatepostList?apiId=347&con=" + this.inputText;
+      console.log(this.textInput)
+    },
+     toInsert() {
+      this.$router.push("/resouse/addGatepost");
+
+    },
+    updateGatepostRules(scope){
+      console.log(scope.row.gatepostId)
+      this.$router.push("/resouse/editGatepost/"+ scope.row.gatepostId)
+    },
+    deleteGatepost(scope){
+      this.$confirm("是否删除", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+        center: true,
+      })
+        .then(() => {
+          this.$axios
+            .post("/api/v1/rms/deleteGatepost/" + scope.row.gatepostId)
+            .then((res) => {
+              if (res.data.code == 200) {
+                this.$message({
+                  type: "success",
+                  message: "删除成功!",
+                });     
+                this.$router.go(0);
+              } else {
+                this.$message({
+                  message: "删除失败",
+                  type: "warning",
+                });
+              }
+            });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "删除操作已取消!",
+          });
+        });
+    }
+  }
+}
+
+</script>
+
+<style lang="scss" scode>
+.steel_inbound{
+  .sache{
+    height: 80px;
+    display: flex;
+    align-items: center;
+    padding-left: 30px;
+  }
+}
+</style>

+ 112 - 0
src/views/RMS/components/material.vue

@@ -0,0 +1,112 @@
+<!--管理原料-->
+<template>
+  <div class="steel_inbound">
+    <div class="sache">
+      <el-input
+        placeholder="请输入内容"
+        v-model="inputText"
+        clearable>
+      </el-input>
+      <el-button type="primary" class="btn" @click="onclick">
+        <i class="el-icon-search"></i>查询
+      </el-button>
+       <el-button type="primary" class="btn" @click="toInsert">
+        <i class="el-icon-plus"></i>新增
+      </el-button>
+    </div>
+    <div class="table">
+      <dilTable v-bind.sync="options">
+        <el-table-column fixed="right" label="操作" width="100">
+          <template slot-scope="scope">
+            <el-button
+              type="text"
+              size="small"
+              @click="updateMaterial(scope)"
+            >
+              修改
+            </el-button>
+            <el-button
+              type="text"
+              size="mini"
+              @click="deleteMaterial(scope)"
+            >
+              删除
+            </el-button>
+          </template>
+        </el-table-column>
+      </dilTable>
+    </div>
+  </div>
+</template>
+
+<script>
+export default {
+  data(){
+    return{
+      inputText:"",
+      options:{
+        // first请求数据的地址
+        requestUrl: "/api/v1/rms/getMaterialList?apiId=350",
+      },
+    }
+  },
+  methods:{
+    onclick(){
+      this.options.requestUrl="/api/v1/rms/getMaterialList?apiId=350&con=" + this.inputText;
+      console.log(this.inputText)
+    },
+    toInsert() {
+      this.$router.push("/resouse/addMaterial");
+
+    },
+    updateMaterial(scope){
+      console.log(scope.row.materialId)
+      this.$router.push("/resouse/editMaterial/"+scope.row.materialId)
+    },
+    deleteMaterial(scope){
+      this.$confirm("是否删除", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+        center: true,
+      })
+        .then(() => {
+          this.$axios
+            .post("/api/v1/rms/deleteMaterial/" + scope.row.materialId)
+            .then((res) => {
+              if (res.data.code == 200) {
+                this.$message({
+                  type: "success",
+                  message: "删除成功!",
+                });     
+                this.$router.go(0);
+              } else {
+                this.$message({
+                  message: "删除失败",
+                  type: "warning",
+                });
+              }
+            });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "删除操作已取消!",
+          });
+        });
+    },
+    },
+  }
+
+</script>
+
+<style lang="scss" scode>
+.steel_inbound{
+  .sache{
+    height: 80px;
+    display: flex;
+    align-items: center;
+    padding-left: 30px;
+  }
+}
+</style>

+ 115 - 0
src/views/RMS/components/oilPrice.vue

@@ -0,0 +1,115 @@
+//资源管理油价管理
+<template>
+  <div class="oilPrice">
+    <div class="sache">
+      <el-input
+        placeholder="请输入内容"
+        v-model="textInput"
+        clearable>
+      </el-input>
+      <el-button type="primary" class="btn"  @click="onclick">
+        <i class="el-icon-search"></i>查询
+      </el-button>
+      <el-button type="primary" class="btn" @click="toInsert">
+        <i class="el-icon-plus"></i>新增
+      </el-button>
+    </div>
+    <div class="table">
+      <dilTable v-bind.sync="options">
+        <el-table-column fixed="right" label="操作" width="100">
+          <template slot-scope="scope">
+            <el-button
+              type="text"
+              size="small"
+              @click="updateOilPrice(scope)"
+            >
+              修改
+            </el-button>
+            <el-button
+              type="text"
+              size="mini"
+              @click="deleteOilPrice(scope)"
+            >
+              删除
+            </el-button>
+          </template>
+        </el-table-column>
+      </dilTable>
+    </div>
+  </div>
+</template>
+<script>
+export default {
+  name:"homeworkPath",
+  data(){
+    return{
+      textInput: "" ,
+      restaurants: [],
+      options:{
+        // first请求数据的地址
+        requestUrl: "/api/v1/rms/getOilPriceList?apiId=380",
+      },
+    }
+  },
+  methods:{
+    onclick(){
+      this.options.requestUrl = "/api/v1/rms/getOilPriceList?apiId=380&con=" +this.textInput;
+    },
+
+    toInsert() {
+      this.$router.push("/resouse/addOilPrice");
+
+    },
+    /*这里要改一改*/
+    updateOilPrice(scope){
+      console.log(scope.row.priceId)
+      this.$router.push("/resouse/editOilPrice/"+scope.row.priceId)
+    },
+    deleteOilPrice(scope){
+      this.$confirm("是否删除", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+        center: true,
+      })
+        .then(() => {
+          this.$axios
+            .post("/api/v1/rms/deleteOilPrice/" + scope.row.priceId)
+            .then((res) => {
+              if (res.data.code == 200) {
+                this.$message({
+                  type: "success",
+                  message: "删除成功!",
+                });
+                this.$router.go(0);
+              } else {
+                this.$message({
+                  message: "删除失败",
+                  type: "warning",
+                });
+              }
+            });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "删除操作已取消!",
+          });
+        });
+    },
+  },
+
+}
+
+</script>
+
+<style lang="scss" scode>
+.oilPrice{
+  .sache{
+    height: 80px;
+    display: flex;
+    align-items: center;
+    padding-left: 30px;
+  }
+}
+</style>

+ 113 - 0
src/views/RMS/components/personnel.vue

@@ -0,0 +1,113 @@
+// 人员管理
+<template>
+  <div class="steel_inbound">
+    <div class="sache">
+      <el-input
+        placeholder="请输入内容"
+        v-model="textInput"
+        clearable>
+      </el-input>
+      <el-button type="primary" class="btn" @click="onclick">
+        <i class="el-icon-search"></i>查询
+      </el-button>
+       <el-button type="primary" class="btn" @click="toInsert">
+        <i class="el-icon-plus"></i>新增
+      </el-button>
+    </div>
+    <div class="table">
+      <dilTable v-bind.sync="options">
+        <el-table-column fixed="right" label="操作" width="100">
+          <template slot-scope="scope">
+            <el-button
+              type="text"
+              size="small"
+              @click="updatePersonnel(scope)"
+            >
+              修改
+            </el-button>
+            <el-button
+              type="text"
+              size="mini"
+              @click="deletePersonnel(scope)"
+            >
+              删除
+            </el-button>
+          </template>
+        </el-table-column>
+      </dilTable>
+    </div>
+  </div>
+</template>
+
+<script>
+export default {
+  data(){
+    return{
+      textInput:"",
+      restaurants:[],
+      options:{
+        // first请求数据的地址
+        requestUrl: "/api/v1/rms/getPersonnelList?apiId=341",
+      },
+    }
+  },
+  methods:{
+    onclick(){
+      this.options.requestUrl="/api/v1/rms/getPersonnelList?apiId=341&con=" + this.textInput;
+      console.log(this.textInput)
+    },
+    toInsert() {
+      this.$router.push("/resouse/addPersonnel");
+
+    },
+    updatePersonnel(scope){
+      console.log(scope.row.personnelId)
+      this.$router.push("/resouse/editPersonnel/"+scope.row.personnelId)
+    },
+    deletePersonnel(scope){
+      this.$confirm("是否删除", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+        center: true,
+      })
+        .then(() => {
+          this.$axios
+            .post("/api/v1/rms/deletePersonnel/" + scope.row.personnelId)
+            .then((res) => {
+              if (res.data.code == 200) {
+                this.$message({
+                  type: "success",
+                  message: "删除成功!",
+                });     
+                this.$router.go(0);
+              } else {
+                this.$message({
+                  message: "删除失败",
+                  type: "warning",
+                });
+              }
+            });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "删除操作已取消!",
+          });
+        });
+    },
+    },
+  }
+
+</script>
+
+<style lang="scss" scode>
+.steel_inbound{
+  .sache{
+    height: 80px;
+    display: flex;
+    align-items: center;
+    padding-left: 30px;
+  }
+}
+</style>

+ 96 - 0
src/views/RMS/components/pier.vue

@@ -0,0 +1,96 @@
+//资源管理港口
+<template>
+  <div class="steel_inbound">
+    <div class="sache">
+      <el-input
+        placeholder="请输入内容"
+        v-model="inputText"
+        clearable>
+      </el-input>
+      <el-button type="primary" class="btn" @click="onclick">
+        <i class="el-icon-search"></i>查询
+      </el-button>
+       <el-button type="primary" class="btn" @click="toInsert">
+        <i class="el-icon-plus"></i>新增
+      </el-button>
+    </div>
+    <div class="table">
+      <dilTable v-bind.sync="options">
+        <el-table-column fixed="right" label="操作" width="100">
+          <template slot-scope="scope">
+            <el-button
+              type="text"
+              size="mini"
+              @click="deleteBmsTrainFreight(scope)"
+            >
+              删除
+            </el-button>
+          </template>
+        </el-table-column>
+      </dilTable>
+    </div>
+  </div>
+</template>
+
+<script>
+export default {
+  data(){
+    return{
+      inputText:"",
+      options:{
+        // first请求数据的地址
+        requestUrl: "/api/v1/rms/getPier?apiId=223",
+      },
+    }
+  },
+  methods:{
+     toInsert() {
+      this.$router.push("/resouse/addPier");
+    },
+    deleteBmsTrainFreight(scope){
+      this.$confirm("是否删除", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+        center: true,
+      })
+        .then(() => {
+          this.$axios
+            .post("/api/v1/rms/deletePier/" + scope.row.pierId)
+            .then((res) => {
+              if (res.data.code == 200) {
+                this.$message({
+                  type: "success",
+                  message: "删除成功!",
+                });     
+                this.$router.go(0);
+              } else {
+                this.$message({
+                  message: "删除失败",
+                  type: "warning",
+                });
+              }
+            });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "删除操作已取消!",
+          });
+        });
+    },
+    },
+  }
+
+</script>
+
+<style lang="scss" scode>
+.steel_inbound{
+  .sache{
+    height: 80px;
+    display: flex;
+    align-items: center;
+    padding-left: 30px;
+  }
+}
+</style>

+ 98 - 0
src/views/RMS/components/port.vue

@@ -0,0 +1,98 @@
+//资源管理港口
+<template>
+  <div class="steel_inbound">
+    <div class="sache">
+      <el-input
+        placeholder="请输入内容"
+        v-model="inputText"
+        clearable>
+      </el-input>
+      <el-button type="primary" class="btn" @click="onclick">
+        <i class="el-icon-search"></i>查询
+      </el-button>
+       <el-button type="primary" class="btn" @click="toInsert">
+        <i class="el-icon-plus"></i>新增
+      </el-button>
+    </div>
+    <div class="table">
+      <dilTable v-bind.sync="options">
+        <el-table-column fixed="right" label="操作" width="100">
+          <template slot-scope="scope">
+            <el-button
+              type="text"
+              size="mini"
+              @click="deleteBmsTrainFreight(scope)"
+            >
+              删除
+            </el-button>
+          </template>
+        </el-table-column>
+      </dilTable>
+    </div>
+  </div>
+</template>
+
+<script>
+export default {
+  data(){
+    return{
+      inputText:"",
+      options:{
+        // first请求数据的地址
+        requestUrl: "/api/v1/rms/getPort?apiId=222",
+      },
+    }
+  },
+  methods:{
+     toInsert() {
+      this.$router.push("/resouse/addPort");
+
+    },
+
+    deleteBmsTrainFreight(scope){
+      this.$confirm("是否删除", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+        center: true,
+      })
+        .then(() => {
+          this.$axios
+            .post("/api/v1/rms/deletePort/" + scope.row.portId)
+            .then((res) => {
+              if (res.data.code == 200) {
+                this.$message({
+                  type: "success",
+                  message: "删除成功!",
+                });     
+                this.$router.go(0);
+              } else {
+                this.$message({
+                  message: "删除失败",
+                  type: "warning",
+                });
+              }
+            });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "删除操作已取消!",
+          });
+        });
+    },
+    },
+  }
+
+</script>
+
+<style lang="scss" scode>
+.steel_inbound{
+  .sache{
+    height: 80px;
+    display: flex;
+    align-items: center;
+    padding-left: 30px;
+  }
+}
+</style>

Some files were not shown because too many files changed in this diff