diff --git a/hb_client/src/assets/scss/index.scss b/hb_client/src/assets/scss/index.scss
index 3630421..152e049 100644
--- a/hb_client/src/assets/scss/index.scss
+++ b/hb_client/src/assets/scss/index.scss
@@ -130,7 +130,10 @@
//下方区域的布局
.content-box {
display: grid;
- grid-template-columns: 2fr 3fr 5fr 3fr 2fr;
+ grid-template-columns: 35% 15% 15% 15% 20%;
+ div{
+ box-sizing: border-box!important;
+ }
}
// 底部数据
diff --git a/hb_client/src/icons/svg/404.svg b/hb_client/src/icons/svg/404.svg
deleted file mode 100644
index 6df5019..0000000
--- a/hb_client/src/icons/svg/404.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/attendance.svg b/hb_client/src/icons/svg/attendance.svg
new file mode 100644
index 0000000..63a946a
--- /dev/null
+++ b/hb_client/src/icons/svg/attendance.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/bug.svg b/hb_client/src/icons/svg/bug.svg
deleted file mode 100644
index 05a150d..0000000
--- a/hb_client/src/icons/svg/bug.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/calibrationRecord.svg b/hb_client/src/icons/svg/calibrationRecord.svg
new file mode 100644
index 0000000..c01021a
--- /dev/null
+++ b/hb_client/src/icons/svg/calibrationRecord.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/chart.svg b/hb_client/src/icons/svg/chart.svg
deleted file mode 100644
index 27728fb..0000000
--- a/hb_client/src/icons/svg/chart.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/check.svg b/hb_client/src/icons/svg/check.svg
new file mode 100644
index 0000000..b74de55
--- /dev/null
+++ b/hb_client/src/icons/svg/check.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/clipboard.svg b/hb_client/src/icons/svg/clipboard.svg
deleted file mode 100644
index 90923ff..0000000
--- a/hb_client/src/icons/svg/clipboard.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/component.svg b/hb_client/src/icons/svg/component.svg
deleted file mode 100644
index 207ada3..0000000
--- a/hb_client/src/icons/svg/component.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/contract.svg b/hb_client/src/icons/svg/contract.svg
new file mode 100644
index 0000000..befe23f
--- /dev/null
+++ b/hb_client/src/icons/svg/contract.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/costStatistics.svg b/hb_client/src/icons/svg/costStatistics.svg
new file mode 100644
index 0000000..5882805
--- /dev/null
+++ b/hb_client/src/icons/svg/costStatistics.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/customer.svg b/hb_client/src/icons/svg/customer.svg
new file mode 100644
index 0000000..c1bf19e
--- /dev/null
+++ b/hb_client/src/icons/svg/customer.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/dashboard.svg b/hb_client/src/icons/svg/dashboard.svg
deleted file mode 100644
index 5317d37..0000000
--- a/hb_client/src/icons/svg/dashboard.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/documentation.svg b/hb_client/src/icons/svg/documentation.svg
deleted file mode 100644
index 7043122..0000000
--- a/hb_client/src/icons/svg/documentation.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/drag.svg b/hb_client/src/icons/svg/drag.svg
deleted file mode 100644
index 4185d3c..0000000
--- a/hb_client/src/icons/svg/drag.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/edit.svg b/hb_client/src/icons/svg/edit.svg
deleted file mode 100644
index d26101f..0000000
--- a/hb_client/src/icons/svg/edit.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/education.svg b/hb_client/src/icons/svg/education.svg
deleted file mode 100644
index 7bfb01d..0000000
--- a/hb_client/src/icons/svg/education.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/email.svg b/hb_client/src/icons/svg/email.svg
deleted file mode 100644
index 74d25e2..0000000
--- a/hb_client/src/icons/svg/email.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/equipment.svg b/hb_client/src/icons/svg/equipment.svg
new file mode 100644
index 0000000..2bdce33
--- /dev/null
+++ b/hb_client/src/icons/svg/equipment.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/example.svg b/hb_client/src/icons/svg/example.svg
deleted file mode 100644
index 46f42b5..0000000
--- a/hb_client/src/icons/svg/example.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/excel.svg b/hb_client/src/icons/svg/excel.svg
deleted file mode 100644
index 74d97b8..0000000
--- a/hb_client/src/icons/svg/excel.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/execute.svg b/hb_client/src/icons/svg/execute.svg
new file mode 100644
index 0000000..27dbf42
--- /dev/null
+++ b/hb_client/src/icons/svg/execute.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/exit-fullscreen.svg b/hb_client/src/icons/svg/exit-fullscreen.svg
deleted file mode 100644
index 485c128..0000000
--- a/hb_client/src/icons/svg/exit-fullscreen.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/eye-open.svg b/hb_client/src/icons/svg/eye-open.svg
deleted file mode 100644
index 88dcc98..0000000
--- a/hb_client/src/icons/svg/eye-open.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/eye.svg b/hb_client/src/icons/svg/eye.svg
deleted file mode 100644
index 16ed2d8..0000000
--- a/hb_client/src/icons/svg/eye.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/fifo.svg b/hb_client/src/icons/svg/fifo.svg
new file mode 100644
index 0000000..34f0d69
--- /dev/null
+++ b/hb_client/src/icons/svg/fifo.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/finishedCheck.svg b/hb_client/src/icons/svg/finishedCheck.svg
new file mode 100644
index 0000000..2d664e5
--- /dev/null
+++ b/hb_client/src/icons/svg/finishedCheck.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/finishedProduct.svg b/hb_client/src/icons/svg/finishedProduct.svg
new file mode 100644
index 0000000..654767c
--- /dev/null
+++ b/hb_client/src/icons/svg/finishedProduct.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/form.svg b/hb_client/src/icons/svg/form.svg
deleted file mode 100644
index dcbaa18..0000000
--- a/hb_client/src/icons/svg/form.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/fullscreen.svg b/hb_client/src/icons/svg/fullscreen.svg
deleted file mode 100644
index 0e86b6f..0000000
--- a/hb_client/src/icons/svg/fullscreen.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/guide.svg b/hb_client/src/icons/svg/guide.svg
deleted file mode 100644
index b271001..0000000
--- a/hb_client/src/icons/svg/guide.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/home.svg b/hb_client/src/icons/svg/home.svg
new file mode 100644
index 0000000..746f1e0
--- /dev/null
+++ b/hb_client/src/icons/svg/home.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/icon.svg b/hb_client/src/icons/svg/icon.svg
deleted file mode 100644
index 82be8ee..0000000
--- a/hb_client/src/icons/svg/icon.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/international.svg b/hb_client/src/icons/svg/international.svg
deleted file mode 100644
index e9b56ee..0000000
--- a/hb_client/src/icons/svg/international.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/language.svg b/hb_client/src/icons/svg/language.svg
deleted file mode 100644
index 0082b57..0000000
--- a/hb_client/src/icons/svg/language.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/link.svg b/hb_client/src/icons/svg/link.svg
deleted file mode 100644
index 48197ba..0000000
--- a/hb_client/src/icons/svg/link.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/list.svg b/hb_client/src/icons/svg/list.svg
deleted file mode 100644
index 20259ed..0000000
--- a/hb_client/src/icons/svg/list.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/lock.svg b/hb_client/src/icons/svg/lock.svg
deleted file mode 100644
index 74fee54..0000000
--- a/hb_client/src/icons/svg/lock.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/make.svg b/hb_client/src/icons/svg/make.svg
new file mode 100644
index 0000000..37c34e2
--- /dev/null
+++ b/hb_client/src/icons/svg/make.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/material.svg b/hb_client/src/icons/svg/material.svg
new file mode 100644
index 0000000..e96700d
--- /dev/null
+++ b/hb_client/src/icons/svg/material.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/materialStatistics.svg b/hb_client/src/icons/svg/materialStatistics.svg
new file mode 100644
index 0000000..e3d8477
--- /dev/null
+++ b/hb_client/src/icons/svg/materialStatistics.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/materialbatch.svg b/hb_client/src/icons/svg/materialbatch.svg
new file mode 100644
index 0000000..2ff6380
--- /dev/null
+++ b/hb_client/src/icons/svg/materialbatch.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/message.svg b/hb_client/src/icons/svg/message.svg
deleted file mode 100644
index 14ca817..0000000
--- a/hb_client/src/icons/svg/message.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/money.svg b/hb_client/src/icons/svg/money.svg
deleted file mode 100644
index c1580de..0000000
--- a/hb_client/src/icons/svg/money.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/monitorEquipment.svg b/hb_client/src/icons/svg/monitorEquipment.svg
new file mode 100644
index 0000000..0197798
--- /dev/null
+++ b/hb_client/src/icons/svg/monitorEquipment.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/nested.svg b/hb_client/src/icons/svg/nested.svg
deleted file mode 100644
index 06713a8..0000000
--- a/hb_client/src/icons/svg/nested.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/order.svg b/hb_client/src/icons/svg/order.svg
new file mode 100644
index 0000000..69f2a1c
--- /dev/null
+++ b/hb_client/src/icons/svg/order.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/password.svg b/hb_client/src/icons/svg/password.svg
deleted file mode 100644
index e291d85..0000000
--- a/hb_client/src/icons/svg/password.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/pdf.svg b/hb_client/src/icons/svg/pdf.svg
deleted file mode 100644
index 957aa0c..0000000
--- a/hb_client/src/icons/svg/pdf.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/people.svg b/hb_client/src/icons/svg/people.svg
deleted file mode 100644
index 2bd54ae..0000000
--- a/hb_client/src/icons/svg/people.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/peoples.svg b/hb_client/src/icons/svg/peoples.svg
deleted file mode 100644
index aab852e..0000000
--- a/hb_client/src/icons/svg/peoples.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/personStatistics.svg b/hb_client/src/icons/svg/personStatistics.svg
new file mode 100644
index 0000000..a3bda3a
--- /dev/null
+++ b/hb_client/src/icons/svg/personStatistics.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/position.svg b/hb_client/src/icons/svg/position.svg
deleted file mode 100644
index f89f0e0..0000000
--- a/hb_client/src/icons/svg/position.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/procedure.svg b/hb_client/src/icons/svg/procedure.svg
new file mode 100644
index 0000000..46fa55d
--- /dev/null
+++ b/hb_client/src/icons/svg/procedure.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/processTest.svg b/hb_client/src/icons/svg/processTest.svg
new file mode 100644
index 0000000..3ba6fd2
--- /dev/null
+++ b/hb_client/src/icons/svg/processTest.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/produce.svg b/hb_client/src/icons/svg/produce.svg
new file mode 100644
index 0000000..be48c77
--- /dev/null
+++ b/hb_client/src/icons/svg/produce.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/product.svg b/hb_client/src/icons/svg/product.svg
new file mode 100644
index 0000000..1b128a8
--- /dev/null
+++ b/hb_client/src/icons/svg/product.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/productionEquipment.svg b/hb_client/src/icons/svg/productionEquipment.svg
new file mode 100644
index 0000000..5e68825
--- /dev/null
+++ b/hb_client/src/icons/svg/productionEquipment.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/productionPlan.svg b/hb_client/src/icons/svg/productionPlan.svg
new file mode 100644
index 0000000..1216ede
--- /dev/null
+++ b/hb_client/src/icons/svg/productionPlan.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/productionResources.svg b/hb_client/src/icons/svg/productionResources.svg
new file mode 100644
index 0000000..4a3460e
--- /dev/null
+++ b/hb_client/src/icons/svg/productionResources.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/productionTask.svg b/hb_client/src/icons/svg/productionTask.svg
new file mode 100644
index 0000000..5bc04b7
--- /dev/null
+++ b/hb_client/src/icons/svg/productionTask.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/progressStatistics.svg b/hb_client/src/icons/svg/progressStatistics.svg
new file mode 100644
index 0000000..a0f4f01
--- /dev/null
+++ b/hb_client/src/icons/svg/progressStatistics.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/purchase.svg b/hb_client/src/icons/svg/purchase.svg
new file mode 100644
index 0000000..c9c6e0f
--- /dev/null
+++ b/hb_client/src/icons/svg/purchase.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/purchaseOrder.svg b/hb_client/src/icons/svg/purchaseOrder.svg
new file mode 100644
index 0000000..35444e7
--- /dev/null
+++ b/hb_client/src/icons/svg/purchaseOrder.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/qq.svg b/hb_client/src/icons/svg/qq.svg
deleted file mode 100644
index ee13d4e..0000000
--- a/hb_client/src/icons/svg/qq.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/sale.svg b/hb_client/src/icons/svg/sale.svg
new file mode 100644
index 0000000..468a2f6
--- /dev/null
+++ b/hb_client/src/icons/svg/sale.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/saleInfo.svg b/hb_client/src/icons/svg/saleInfo.svg
new file mode 100644
index 0000000..a31e933
--- /dev/null
+++ b/hb_client/src/icons/svg/saleInfo.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/search.svg b/hb_client/src/icons/svg/search.svg
deleted file mode 100644
index 84233dd..0000000
--- a/hb_client/src/icons/svg/search.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/shopping.svg b/hb_client/src/icons/svg/shopping.svg
deleted file mode 100644
index 87513e7..0000000
--- a/hb_client/src/icons/svg/shopping.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/size.svg b/hb_client/src/icons/svg/size.svg
deleted file mode 100644
index ddb25b8..0000000
--- a/hb_client/src/icons/svg/size.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/skill.svg b/hb_client/src/icons/svg/skill.svg
deleted file mode 100644
index a3b7312..0000000
--- a/hb_client/src/icons/svg/skill.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/star.svg b/hb_client/src/icons/svg/star.svg
deleted file mode 100644
index 6cf86e6..0000000
--- a/hb_client/src/icons/svg/star.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/statistics.svg b/hb_client/src/icons/svg/statistics.svg
new file mode 100644
index 0000000..36451d2
--- /dev/null
+++ b/hb_client/src/icons/svg/statistics.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/stock.svg b/hb_client/src/icons/svg/stock.svg
new file mode 100644
index 0000000..cc9ce34
--- /dev/null
+++ b/hb_client/src/icons/svg/stock.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/supplier.svg b/hb_client/src/icons/svg/supplier.svg
new file mode 100644
index 0000000..d948a57
--- /dev/null
+++ b/hb_client/src/icons/svg/supplier.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/tab.svg b/hb_client/src/icons/svg/tab.svg
deleted file mode 100644
index b4b48e4..0000000
--- a/hb_client/src/icons/svg/tab.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/table.svg b/hb_client/src/icons/svg/table.svg
deleted file mode 100644
index 0e3dc9d..0000000
--- a/hb_client/src/icons/svg/table.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/test.svg b/hb_client/src/icons/svg/test.svg
new file mode 100644
index 0000000..fd0e6d8
--- /dev/null
+++ b/hb_client/src/icons/svg/test.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/testStatistics.svg b/hb_client/src/icons/svg/testStatistics.svg
new file mode 100644
index 0000000..1688ba3
--- /dev/null
+++ b/hb_client/src/icons/svg/testStatistics.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/theme.svg b/hb_client/src/icons/svg/theme.svg
deleted file mode 100644
index 5982a2f..0000000
--- a/hb_client/src/icons/svg/theme.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/tree-table.svg b/hb_client/src/icons/svg/tree-table.svg
deleted file mode 100644
index 8aafdb8..0000000
--- a/hb_client/src/icons/svg/tree-table.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/tree.svg b/hb_client/src/icons/svg/tree.svg
deleted file mode 100644
index dd4b7dd..0000000
--- a/hb_client/src/icons/svg/tree.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/unqualified.svg b/hb_client/src/icons/svg/unqualified.svg
new file mode 100644
index 0000000..8601933
--- /dev/null
+++ b/hb_client/src/icons/svg/unqualified.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/user.svg b/hb_client/src/icons/svg/user.svg
index 0ba0716..18b6145 100644
--- a/hb_client/src/icons/svg/user.svg
+++ b/hb_client/src/icons/svg/user.svg
@@ -1 +1 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/userList.svg b/hb_client/src/icons/svg/userList.svg
new file mode 100644
index 0000000..7380551
--- /dev/null
+++ b/hb_client/src/icons/svg/userList.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/warehouse.svg b/hb_client/src/icons/svg/warehouse.svg
new file mode 100644
index 0000000..5e330d2
--- /dev/null
+++ b/hb_client/src/icons/svg/warehouse.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/wechat.svg b/hb_client/src/icons/svg/wechat.svg
deleted file mode 100644
index c586e55..0000000
--- a/hb_client/src/icons/svg/wechat.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/workshopOperation.svg b/hb_client/src/icons/svg/workshopOperation.svg
new file mode 100644
index 0000000..5c14318
--- /dev/null
+++ b/hb_client/src/icons/svg/workshopOperation.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/workshopTask.svg b/hb_client/src/icons/svg/workshopTask.svg
new file mode 100644
index 0000000..1f03826
--- /dev/null
+++ b/hb_client/src/icons/svg/workshopTask.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/wproduct.svg b/hb_client/src/icons/svg/wproduct.svg
new file mode 100644
index 0000000..6ebdb4c
--- /dev/null
+++ b/hb_client/src/icons/svg/wproduct.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/hb_client/src/icons/svg/zip.svg b/hb_client/src/icons/svg/zip.svg
deleted file mode 100644
index f806fc4..0000000
--- a/hb_client/src/icons/svg/zip.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/hb_client/src/router/index.js b/hb_client/src/router/index.js
index fe7eead..6d08976 100644
--- a/hb_client/src/router/index.js
+++ b/hb_client/src/router/index.js
@@ -49,13 +49,13 @@ export const constantRoutes = [
path: 'dashboard',
name: 'Dashboard',
component: () => import('@/views/dashboard/index'),
- meta: { title: '首页', icon: 'dashboard', affix: true,keepAlive: false }
+ meta: { title: '首页', icon: 'home', affix: true,keepAlive: false }
}]
},
{
path: '/index',
component: () => import('@/views/bigScreen/index'),
- meta: { title: '大屏', icon: 'dashboard', affix: true,keepAlive: false }
+ meta: { title: '大屏', icon: 'home', affix: true,keepAlive: false }
},
{
path: '/changepassword',
@@ -100,13 +100,13 @@ export const asyncRoutes = [
component: Layout,
redirect: '/mtm/material/',
name: 'mtm',
- meta: { title: '制造管理', icon: 'example', perms: ['mtm_manage'] },
+ meta: { title: '制造管理', icon: 'make', perms: ['mtm_manage'] },
children: [
{
path: 'material',
name: 'material',
component: () => import('@/views/mtm/material'),
- meta: { title: '物料清单', icon: 'example', perms: ['mtm_material'] }
+ meta: { title: '物料清单', icon: 'material', perms: ['mtm_material'] }
}
,
@@ -129,7 +129,7 @@ export const asyncRoutes = [
path: 'process',
name: 'process',
component: () => import('@/views/mtm/process'),
- meta: { title: '工序管理', icon: 'example', perms: ['mtm_process'] }
+ meta: { title: '工序管理', icon: 'procedure', perms: ['mtm_process'] }
},
{
path: 'step/:id',
@@ -150,7 +150,7 @@ export const asyncRoutes = [
path: '/mtm/productprocess/',
name: 'productprocess',
component: () => import('@/views/mtm/productprocess'),
- meta: { title: '产品管理', icon: 'example', perms: ['mtm_productprocess'] }
+ meta: { title: '产品管理', icon: 'product', perms: ['mtm_productprocess'] }
},
]
},
@@ -159,13 +159,13 @@ export const asyncRoutes = [
component: Layout,
redirect: '/pm/plan',
name: 'pm',
- meta: { title: '生产管理', icon: 'example', perms: ['pm_manage'] },
+ meta: { title: '生产管理', icon: 'produce', perms: ['pm_manage'] },
children: [
{
path: 'plan',
name: 'plan',
component: () => import('@/views/pm/plan'),
- meta: { title: '生产计划管理', icon: 'example', perms: ['index_manage'] }
+ meta: { title: '生产计划管理', icon: 'productionPlan', perms: ['index_manage'] }
}
,
{
@@ -179,14 +179,14 @@ export const asyncRoutes = [
path: 'resources',
name: 'resources',
component: () => import('@/views/pm/resources'),
- meta: { title: '生产资源配置', icon: 'example', perms: ['pm_resources'] }
+ meta: { title: '生产资源配置', icon: 'productionResources', perms: ['pm_resources'] }
}
,
{
path: 'management',
name: 'management',
component: () => import('@/views/pm/management'),
- meta: { title: '生产任务管理', icon: 'example', perms: ['pm_resources'] }
+ meta: { title: '生产任务管理', icon: 'productionTask', perms: ['pm_resources'] }
},
{
@@ -212,41 +212,41 @@ export const asyncRoutes = [
path: '/wpm',
component: Layout,
redirect: '/wpm/worktask',
- name: 'pm',
- meta: { title: '生产执行', icon: 'example', perms: ['equipment_set'] },
+ name: 'wpm',
+ meta: { title: '生产执行', icon: 'execute', perms: ['equipment_set'] },
children: [
{
path: 'worktask',
name: 'worktask',
component: () => import('@/views/wpm/worktask'),
- meta: { title: '车间任务', icon: 'example', perms: ['index_manage'] }
+ meta: { title: '车间任务', icon: 'workshopTask', perms: ['index_manage'] }
},
{
path: 'operation',
name: 'operation',
component: () => import('@/views/wpm/operation'),
- meta: { title: '车间操作', icon: 'example', perms: ['index_manage'] }
+ meta: { title: '车间操作', icon: 'workshopOperation', perms: ['index_manage'] }
}
,
{
path: 'operationdo/:id',
name: 'operationdo',
component: () => import('@/views/wpm/operationdo'),
- meta: { title: '车间操作跳转界面', icon: 'example', perms: ['index_manage'] },
+ meta: { title: '车间操作跳转界面', icon: 'home', perms: ['index_manage'] },
hidden: true
},
{
path: 'need',
name: 'need',
component: () => import('@/views/wpm/need'),
- meta: { title: '过程检验', icon: 'example', perms: ['index_manage'] }
+ meta: { title: '过程检验', icon: 'processTest', perms: ['index_manage'] }
}
,
{
path: 'productjy',
name: 'productjy',
component: () => import('@/views/wpm/productjy'),
- meta: { title: '成品检验', icon: 'example', perms: ['index_manage'] }
+ meta: { title: '成品检验', icon: 'finishedCheck', perms: ['index_manage'] }
}
]
@@ -256,25 +256,25 @@ export const asyncRoutes = [
component: Layout,
redirect: '/em/equipment',
name: 'em',
- meta: { title: '设备管理', icon: 'example', perms: ['em_manage'] },
+ meta: { title: '设备管理', icon: 'equipment', perms: ['em_manage'] },
children: [
{
path: 'equipment',
name: 'equipment',
component: () => import('@/views/em/equipment'),
- meta: { title: '生产设备', icon: 'example', perms: ['em_equipment'] }
+ meta: { title: '生产设备', icon: 'productionEquipment', perms: ['em_equipment'] }
},
{
path: 'monitoring ',
name: 'monitoring ',
component: () => import('@/views/em/monitoring'),
- meta: { title: '监视和测量设备', icon: 'example', perms: ['em_monitoring'] }
+ meta: { title: '监视和测量设备', icon: 'monitorEquipment', perms: ['em_monitoring'] }
},
{
path: 'record',
name: 'record',
component: () => import('@/views/em/record'),
- meta: { title: '校准检定记录', icon: 'example', perms: ['em_record'] }
+ meta: { title: '校准检定记录', icon: 'calibrationRecord', perms: ['em_record'] }
}
]
},
@@ -283,19 +283,19 @@ export const asyncRoutes = [
component: Layout,
redirect: '/sam/customer',
name: 'sam',
- meta: { title: '销售管理', icon: 'example', perms: ['equipment_set'] },
+ meta: { title: '销售管理', icon: 'sale', perms: ['equipment_set'] },
children: [
{
path: 'customer',
name: 'customer',
component: () => import('@/views/sam/customer'),
- meta: { title: '客户管理', icon: 'example', perms: ['index_manage'] }
+ meta: { title: '客户管理', icon: 'customer', perms: ['index_manage'] }
},
{
path: 'contract',
name: 'contract',
component: () => import('@/views/sam/contract'),
- meta: { title: '合同管理', icon: 'example', perms: ['index_manage'] }
+ meta: { title: '合同管理', icon: 'contract', perms: ['index_manage'] }
}
,
{
@@ -311,7 +311,7 @@ export const asyncRoutes = [
path: 'order',
name: 'order',
component: () => import('@/views/sam/order'),
- meta: { title: '订单管理', icon: 'example', perms: ['index_manage'] }
+ meta: { title: '订单管理', icon: 'order', perms: ['index_manage'] }
}
,
@@ -326,7 +326,7 @@ export const asyncRoutes = [
path: 'sales',
name: 'sales',
component: () => import('@/views/sam/sales'),
- meta: { title: '销售信息', icon: 'example', perms: ['index_manage'] }
+ meta: { title: '销售信息', icon: 'saleInfo', perms: ['index_manage'] }
}
,
{
@@ -343,27 +343,27 @@ export const asyncRoutes = [
component: Layout,
redirect: '/qm/product',
name: 'qm',
- meta: { title: '检验管理', icon: 'example', perms: ['equipment_set'] },
+ meta: { title: '检验管理', icon: 'test', perms: ['equipment_set'] },
children: [
{
path: 'product',
name: 'product',
component: () => import('@/views/qm/product'),
- meta: { title: '军检', icon: 'example', perms: ['index_manage'] }
+ meta: { title: '军检', icon: 'check', perms: ['index_manage'] }
}
,
{
path: 'admissiontest',
name: 'admissiontest',
component: () => import('@/views/qm/admissiontest'),
- meta: { title: '入厂检验', icon: 'example', perms: ['index_manage'] }
+ meta: { title: '入厂检验', icon: 'check', perms: ['index_manage'] }
}
,
{
path: 'processtest',
name: 'processtest',
component: () => import('@/views/qm/processtest'),
- meta: { title: '过程检验', icon: 'example', perms: ['index_manage'] }
+ meta: { title: '过程检验', icon: 'processTest', perms: ['index_manage'] }
},
{
path: 'taskdetails/:id',
@@ -393,13 +393,13 @@ export const asyncRoutes = [
path: 'producttest',
name: 'producttest',
component: () => import('@/views/qm/producttest'),
- meta: { title: '成品检验', icon: 'example', perms: ['index_manage'] }
+ meta: { title: '成品检验', icon: 'finishedCheck', perms: ['index_manage'] }
},
{
path: 'unproduct',
name: 'unproduct',
component: () => import('@/views/qm/unproduct'),
- meta: { title: '不合格品', icon: 'example', perms: ['index_manage'] }
+ meta: { title: '不合格品', icon: 'unqualified', perms: ['index_manage'] }
}
]
@@ -409,24 +409,24 @@ export const asyncRoutes = [
component: Layout,
redirect: '/personnel/user',
name: 'personnel',
- meta: { title: '人员管理', icon: 'example', perms: ['personnel_set'] },
+ meta: { title: '人员管理', icon: 'user', perms: ['personnel_set'] },
children: [
{
path: 'user',
name: 'user',
component: () => import('@/views/personnel/user'),
- meta: { title: '人员列表', icon: 'example', perms: ['user_manage'] }
+ meta: { title: '人员列表', icon: 'userList', perms: ['user_manage'] }
},
{
path: 'attendance',
name: 'attendance',
component: () => import('@/views/personnel/attendance'),
- meta: { title: '考勤列表', icon: 'example', perms: ['attendance_manage'] }
+ meta: { title: '考勤列表', icon: 'attendance', perms: ['attendance_manage'] }
} ,{
path: 'userupdate/:id',
name: 'userupdate',
component: () => import('@/views/personnel/userupdate'),
- meta: { title: '人员信息详情', icon: 'employee', perms: ['employee_detail'] },
+ meta: { title: '人员信息详情', icon: 'home', perms: ['employee_detail'] },
hidden: true
},
@@ -437,13 +437,13 @@ export const asyncRoutes = [
component: Layout,
redirect: '/inm/warehouse',
name: 'inm',
- meta: { title: '库存管理', icon: 'example', perms: ['equipment_set'] },
+ meta: { title: '库存管理', icon: 'stock', perms: ['equipment_set'] },
children: [
{
path: 'warehouse',
name: 'warehouse',
component: () => import('@/views/inm/warehouse'),
- meta: { title: '仓库', icon: 'example', perms: ['index_manage'] }
+ meta: { title: '仓库', icon: 'warehouse', perms: ['index_manage'] }
},
{
path: 'inventory/:id',
@@ -457,13 +457,13 @@ export const asyncRoutes = [
path: 'materialbatch',
name: 'materialbatch',
component: () => import('@/views/inm/materialbatch'),
- meta: { title: '物料批次', icon: 'example', perms: ['index_manage'] }
+ meta: { title: '物料批次', icon: 'materialbatch', perms: ['index_manage'] }
},
{
path: 'fifo',
name: 'fifo',
component: () => import('@/views/inm/fifo'),
- meta: { title: '出入库记录', icon: 'example', perms: ['index_manage'] }
+ meta: { title: '出入库记录', icon: 'home', perms: ['index_manage'] }
},
{
path: 'fifodetail/:id',
@@ -476,13 +476,13 @@ export const asyncRoutes = [
path: 'wproduct',
name: 'wproduct',
component: () => import('@/views/inm/wproduct'),
- meta: { title: '半成品', icon: 'example', perms: ['index_manage'] }
+ meta: { title: '半成品库', icon: 'wproduct', perms: ['index_manage'] }
},
{
path: 'product',
name: 'product',
component: () => import('@/views/inm/product'),
- meta: { title: '成品', icon: 'example', perms: ['index_manage'] }
+ meta: { title: '成品库', icon: 'finishedProduct', perms: ['index_manage'] }
},
]
@@ -492,19 +492,19 @@ export const asyncRoutes = [
component: Layout,
redirect: '/procurement/vendor',
name: 'procurement',
- meta: { title: '采购管理', icon: 'example', perms: ['procurement_set'] },
+ meta: { title: '采购管理', icon: 'purchase', perms: ['procurement_set'] },
children: [
{
path: 'vendor',
name: 'vendor',
component: () => import('@/views/procurement/vendor'),
- meta: { title: '供应商', icon: 'example', perms: ['vendor_manage'] }
+ meta: { title: '供应商', icon: 'supplier', perms: ['vendor_manage'] }
},
{
path: 'puorder',
name: 'puorder',
component: () => import('@/views/procurement/puorder'),
- meta: { title: '采购订单', icon: 'example', perms: ['vendor_manage'] }
+ meta: { title: '采购订单', icon: 'purchaseOrder', perms: ['vendor_manage'] }
},
{
path: 'puorderitem/:id',
@@ -520,37 +520,37 @@ export const asyncRoutes = [
component: Layout,
redirect: '/statistics/progressStatistics',
name: 'statistics',
- meta: { title: '统计分析', icon: 'example', perms: ['workflow_manage'] },
+ meta: { title: '统计分析', icon: 'statistics', perms: ['workflow_manage'] },
children: [
{
path: 'progressStatistics',
name: 'progressStatistics',
component: () => import('@/views/statistics/progressStatistics'),
- meta: { title: '进度统计', icon: 'example', perms: ['workflow_index'] }
+ meta: { title: '进度统计', icon: 'progressStatistics', perms: ['workflow_index'] }
},
{
path: 'materialStatistics',
name: 'materialStatistics',
component: () => import('@/views/statistics/materialStatistics'),
- meta: { title: '物料统计', icon: 'example', perms: ['workflow_index'] }
+ meta: { title: '物料统计', icon: 'materialStatistics', perms: ['workflow_index'] }
},
{
path: 'personStatistics',
name: 'personStatistics',
component: () => import('@/views/statistics/personStatistics'),
- meta: { title: '人员统计', icon: 'example', perms: ['workflow_index'] }
+ meta: { title: '人员统计', icon: 'personStatistics', perms: ['workflow_index'] }
},
{
path: 'costStatistics',
name: 'costStatistics',
component: () => import('@/views/statistics/costStatistics'),
- meta: { title: '成本统计', icon: 'example', perms: ['workflow_index'] }
+ meta: { title: '成本统计', icon: 'costStatistics', perms: ['workflow_index'] }
},
{
path: 'testStatistics',
name: 'testStatistics',
component: () => import('@/views/statistics/testStatistics'),
- meta: { title: '检验统计', icon: 'example', perms: ['workflow_index'] }
+ meta: { title: '检验统计', icon: 'testStatistics', perms: ['workflow_index'] }
},
]
@@ -560,46 +560,46 @@ export const asyncRoutes = [
component: Layout,
redirect: '/workflow/index',
name: 'workflow',
- meta: { title: '工作流', icon: 'example', perms: ['workflow_manage'] },
+ meta: { title: '工作流', icon: 'home', perms: ['workflow_manage'] },
children: [
{
path: 'index',
name: 'index',
component: () => import('@/views/workflow/index'),
- meta: { title: '工作流配置', icon: 'example', perms: ['workflow_index'] }
+ meta: { title: '工作流配置', icon: 'home', perms: ['workflow_index'] }
},
{
path: 'ticket',
name: 'ticket',
component: () => import('@/views/workflow/ticket'),
- meta: { title: '工单管理', icon: 'example' ,noCache: true, perms: ['workflow_ticket'] },
+ meta: { title: '工单管理', icon: 'home' ,noCache: true, perms: ['workflow_ticket'] },
},
{
path: 'workFlowTickets',
name: 'workFlowTickets',
component: () => import('@/views/workflow/workFlowTickets'),
- meta: { title: '工单管理', icon: 'example' ,noCache: true,},
+ meta: { title: '工单管理', icon: 'home' ,noCache: true,},
hidden: true
},
{
path: 'configuration',
name: 'configuration',
component: () => import('@/views/workflow/configuration'),
- meta: { title: '人员信息详情', icon: 'example' },
+ meta: { title: '人员信息详情', icon: 'home' },
hidden: true
},
{
path: 'ticketHandle',
name: 'ticketHandle',
component: () => import('@/views/workflow/ticketHandle'),
- meta: { title: '工单处理', icon: 'example',noCache: true,},
+ meta: { title: '工单处理', icon: 'home',noCache: true,},
hidden: true
},
{
path: 'ticketDetail',
name: 'ticketDetail',
component: () => import('@/views/workflow/ticketDetail'),
- meta: { title: '工单详情', icon: 'example',noCache: true,},
+ meta: { title: '工单详情', icon: 'home',noCache: true,},
hidden: true
},
]
@@ -609,13 +609,13 @@ export const asyncRoutes = [
component: Layout,
redirect: '/system/user',
name: 'System',
- meta: { title: '系统管理', icon: 'example', perms: ['system_manage'] },
+ meta: { title: '系统管理', icon: 'home', perms: ['system_manage'] },
children: [
{
path: 'user',
name: 'User',
component: () => import('@/views/system/user.vue'),
- meta: { title: '用户管理', icon: 'user', perms: ['user_manage'] }
+ meta: { title: '用户管理', icon: 'home', perms: ['user_manage'] }
}
,
@@ -623,37 +623,37 @@ export const asyncRoutes = [
path: 'organization',
name: 'Organization',
component: () => import('@/views/system/organization'),
- meta: { title: '部门管理', icon: 'tree', perms: ['org_manage'] }
+ meta: { title: '部门管理', icon: 'home', perms: ['org_manage'] }
},
{
path: 'role',
name: 'Role',
component: () => import('@/views/system/role'),
- meta: { title: '角色管理', icon: 'lock', perms: ['role_manage'] }
+ meta: { title: '角色管理', icon: 'home', perms: ['role_manage'] }
},
{
path: 'position',
name: 'Postion',
component: () => import('@/views/system/position'),
- meta: { title: '岗位管理', icon: 'position', perms: ['position_manage'] }
+ meta: { title: '岗位管理', icon: 'home', perms: ['position_manage'] }
},
{
path: 'dict',
name: 'Dict',
component: () => import('@/views/system/dict'),
- meta: { title: '数据字典', icon: 'example', perms: ['dict_manage'] }
+ meta: { title: '数据字典', icon: 'home', perms: ['dict_manage'] }
},
{
path: 'file',
name: 'File',
component: () => import('@/views/system/file'),
- meta: { title: '文件库', icon: 'documentation', perms: ['file_room'] }
+ meta: { title: '文件库', icon: 'home', perms: ['file_room'] }
},
{
path: 'task',
name: 'Task',
component: () => import('@/views/system/task'),
- meta: { title: '定时任务', icon: 'list', perms: ['ptask_manage'] }
+ meta: { title: '定时任务', icon: 'home', perms: ['ptask_manage'] }
}
]
},
@@ -662,13 +662,13 @@ export const asyncRoutes = [
component: Layout,
redirect: '/monitor/service',
name: 'Monitor',
- meta: { title: '系统监控', icon: 'example', perms: ['monitor_set'] },
+ meta: { title: '系统监控', icon: 'home', perms: ['monitor_set'] },
children: [
{
path: 'service',
name: 'service',
component: () => import('@/views/monitor/service'),
- meta: { title: '服务监控', icon: 'example', perms: ['service_manage'] }
+ meta: { title: '服务监控', icon: 'home', perms: ['service_manage'] }
}
]
},
@@ -677,13 +677,13 @@ export const asyncRoutes = [
component: Layout,
redirect: '/develop/perm',
name: 'Develop',
- meta: { title: '开发配置', icon: 'example', perms: ['dev_set'] },
+ meta: { title: '开发配置', icon: 'home', perms: ['dev_set'] },
children: [
{
path: 'perm',
name: 'Perm',
component: () => import('@/views/system/perm'),
- meta: { title: '权限菜单', icon: 'example', perms: ['perm_manage'] }
+ meta: { title: '权限菜单', icon: 'home', perms: ['perm_manage'] }
},
{
path: 'form-gen-link',
@@ -691,7 +691,7 @@ export const asyncRoutes = [
children: [
{
path: 'https://jakhuang.github.io/form-generator/',
- meta: { title: '表单设计器', icon: 'link', perms: ['dev_form_gen'] }
+ meta: { title: '表单设计器', icon: 'home', perms: ['dev_form_gen'] }
}
]
},
@@ -701,7 +701,7 @@ export const asyncRoutes = [
children: [
{
path: process.env.VUE_APP_BASE_API + '/docs/',
- meta: { title: '接口文档', icon: 'link', perms: ['dev_docs'] }
+ meta: { title: '接口文档', icon: 'home', perms: ['dev_docs'] }
}
]
},
@@ -711,7 +711,7 @@ export const asyncRoutes = [
children: [
{
path: process.env.VUE_APP_BASE_API + '/swagger/',
- meta: { title: 'Swagger文档', icon: 'link', perms: ['dev_docs'] }
+ meta: { title: 'Swagger文档', icon: 'home', perms: ['dev_docs'] }
}
]
},
@@ -721,7 +721,7 @@ export const asyncRoutes = [
children: [
{
path: process.env.VUE_APP_BASE_API + '/admin/',
- meta: { title: 'Django后台', icon: 'link', perms: ['dev_admin'] }
+ meta: { title: 'Django后台', icon: 'home', perms: ['dev_admin'] }
}
]
}
@@ -732,25 +732,25 @@ export const asyncRoutes = [
component: Layout,
redirect: '/testModel/faceLogin/',
name: 'testModel',
- meta: { title: '测试模块', icon: 'example' },
+ meta: { title: '测试模块', icon: 'home' },
children: [
{
path: 'faceLogin',
name: 'faceLogin',
component: () => import('@/views/testModel/faceLogin'),
- meta: { title: '人脸识别登录', icon: 'example' }
+ meta: { title: '人脸识别登录', icon: 'home' }
},
{
path: 'caram',
name: 'caram',
component: () => import('@/views/testModel/caram'),
- meta: { title: '相机调用', icon: 'example' }
+ meta: { title: '相机调用', icon: 'home' }
},
{
path: 'markImage',
name: 'markImage',
component: () => import('@/views/testModel/markImage'),
- meta: { title: '图片标记', icon: 'example' }
+ meta: { title: '图片标记', icon: 'home' }
}
]
},
diff --git a/hb_client/src/views/bigScreen/center.vue b/hb_client/src/views/bigScreen/center.vue
index a8f52ce..b3bc0fd 100644
--- a/hb_client/src/views/bigScreen/center.vue
+++ b/hb_client/src/views/bigScreen/center.vue
@@ -242,7 +242,7 @@ export default {
padding: 10px;
width: 59%;
.dv-scr-rank-board {
- height: 225px;
+ height: 200px;
}
}
.percent {
diff --git a/hb_client/src/views/bigScreen/centerRight1.vue b/hb_client/src/views/bigScreen/centerRight1.vue
index 466fd3d..59c6c62 100644
--- a/hb_client/src/views/bigScreen/centerRight1.vue
+++ b/hb_client/src/views/bigScreen/centerRight1.vue
@@ -49,7 +49,7 @@ export default {
diff --git a/hb_client/src/views/statistics/personStatistics.vue b/hb_client/src/views/statistics/personStatistics.vue
index ee6fefe..a608e05 100644
--- a/hb_client/src/views/statistics/personStatistics.vue
+++ b/hb_client/src/views/statistics/personStatistics.vue
@@ -1,13 +1,154 @@
-
+
+
+
+
+ 搜索
+
+ 重置
+
+
+
+
+
+ {{ scope.row.number }}
+
+
+ {{ scope.row.name }}
+
+
+
+
+
+
+
+
+ {{ scope.row.dept_.name }}
+
+
+
+
+
+
-
+
diff --git a/hb_client/src/views/statistics/progressStatistics.vue b/hb_client/src/views/statistics/progressStatistics.vue
index dece4b0..4b1942d 100644
--- a/hb_client/src/views/statistics/progressStatistics.vue
+++ b/hb_client/src/views/statistics/progressStatistics.vue
@@ -3,50 +3,139 @@
+ 准时交付率
-
+
+ 工序进度
+
+
+
+
+
+ 产品交付数
+
-
-
-
-
-
-
+
+
+
+
+
+
+
+ {{ scope.row.number }}
+
+
+ {{ scope.row.product_.name }}
+
+
+ {{ scope.row.count }}
+
+
+
+ {{ scope.row.delivered_count }}
+
+
+ {{ scope.row.delivery_date }}
+
+
+
+
+
+
+
+
+
+
+
+
+ {{scope.row.product_.name}}
+
+
+ {{scope.row.product_.specification}}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/hb_client/src/views/workflow/ticketDetail.vue b/hb_client/src/views/workflow/ticketDetail.vue
index 3e55a11..0b5851d 100644
--- a/hb_client/src/views/workflow/ticketDetail.vue
+++ b/hb_client/src/views/workflow/ticketDetail.vue
@@ -180,20 +180,20 @@
that.ticketDetail.ticket_data_[i].field_choice = that.orgList;
}
}
- console.log(that.ticketDetail.state_.enable_retreat);
+ // console.log(that.ticketDetail.state_.enable_retreat);
let state = res.data.state;
let dat = that.flowSteps.filter((item) => {
return item.id == state;
})
- debugger;
+ // debugger;
let state_fields = dat[0].state_fields;
if (state_fields !== {}) {
for (let labe in state_fields) {
for (let j = 0; j < that.ticketDetail.ticket_data_.length; j++) {
if (that.ticketDetail.ticket_data_[j].field_key === labe) {
- debugger;
- console.log(labe)
- console.log(state_fields[labe])
+ // debugger;
+ // console.log(labe)
+ // console.log(state_fields[labe])
if (state_fields[labe] !== 4) {
that.ticketDetail.ticket_data_[j].is_hidden = false
} else {
@@ -423,7 +423,7 @@
obj.transition = id;
obj.ticket_data = this.ticketDetail.ticket_data;
obj.suggestion = this.ticketForm.suggestion;
- console.log(this.ticketForm);
+ // console.log(this.ticketForm);
ticketHandle(this.ticketId, obj).then(res => {
if (res.data) {
this.$store.dispatch("user/getCount", {})
diff --git a/hb_server/apps/hrm/views.py b/hb_server/apps/hrm/views.py
index 5bf9457..ed733da 100644
--- a/hb_server/apps/hrm/views.py
+++ b/hb_server/apps/hrm/views.py
@@ -125,6 +125,7 @@ class FaceLogin(CreateAPIView):
user, msg = HRMService.face_compare_from_base64(base64_data)
if user:
refresh = RefreshToken.for_user(user)
+ # 可设为在岗
return Response({
'refresh': str(refresh),
'access': str(refresh.access_token),
diff --git a/hb_server/apps/pm/views.py b/hb_server/apps/pm/views.py
index 44eea4d..21967b1 100644
--- a/hb_server/apps/pm/views.py
+++ b/hb_server/apps/pm/views.py
@@ -240,6 +240,7 @@ class ResourceViewSet(GenericViewSet):
'count_safe':m['material__count_safe']})
return Response(res)
+
@action(methods=['post'], detail=False, perms_map={'post':'resource_cal_equip'}, serializer_class=ResourceCalListSerializer)
def cal_equip(self, request, pk=None):
"""
diff --git a/hb_server/apps/srm/views.py b/hb_server/apps/srm/views.py
index d8531c0..8e010b8 100644
--- a/hb_server/apps/srm/views.py
+++ b/hb_server/apps/srm/views.py
@@ -1,4 +1,5 @@
+from datetime import date, timedelta
from django.shortcuts import render
from numpy import number
from rest_framework import serializers
@@ -78,6 +79,14 @@ class AtWorkCountView(CreateAPIView):
serializer = self.get_serializer(data=request.data)
serializer.is_valid(raise_exception=True)
vdata = serializer.validated_data
+
+ from workalendar.asia import China
+ cal = China()
+ count_workday = cal.get_working_days_delta(
+ date(vdata['year'], vdata['month'], 1),
+ (date(vdata['year'], vdata['month'], 1).replace(day=1)
+ + timedelta(days=32)).replace(day=1) - timedelta(days=1)
+ )
ret = ClockRecord.objects.filter(
update_time__year = vdata['year'],
update_time__month = vdata['month']
@@ -89,5 +98,7 @@ class AtWorkCountView(CreateAPIView):
dept_name = F('create_by__dept__name')).annotate(
count = Count('id')
)
- return Response(list(ret))
-
+ ret_list = list(ret)
+ for i in ret:
+ i['count_workday'] = count_workday
+ return Response(ret_list)
diff --git a/hb_server/apps/wpm/serializers.py b/hb_server/apps/wpm/serializers.py
index 3fa0a32..b5c702f 100644
--- a/hb_server/apps/wpm/serializers.py
+++ b/hb_server/apps/wpm/serializers.py
@@ -559,6 +559,7 @@ class WproductTicketListSerializer(serializers.ModelSerializer):
resp_process_ = ProcessSimpleSerializer(source='resp_process', read_only=True)
order_ = OrderSimpleSerializer(source='subproduction_plan.production_plan.order', read_only=True)
product_ = MaterialSimpleSerializer(source='subproduction_plan.production_plan.product', read_only=True)
+ workflow = serializers.PrimaryKeyRelatedField(source='ticket.workflow', read_only=True)
class Meta:
model = WprouctTicket
diff --git a/hb_server/apps/wpm/views.py b/hb_server/apps/wpm/views.py
index 81c18ed..98d1a2d 100644
--- a/hb_server/apps/wpm/views.py
+++ b/hb_server/apps/wpm/views.py
@@ -499,7 +499,8 @@ class WproductTicketViewSet(ListModelMixin, GenericViewSet):
perms_map = {'get': '*'}
queryset = WprouctTicket.objects.select_related('step', 'material', 'subproduction_plan',
'resp_process', 'subproduction_plan__production_plan__order',
- 'subproduction_plan__production_plan')
+ 'subproduction_plan__production_plan',
+ 'ticket__workflow')
serializer_class = WproductTicketListSerializer
filterset_fields = ['step', 'material',
'subproduction_plan', 'resp_process']
@@ -631,6 +632,7 @@ class OperationViewSet(ListModelMixin, RetrieveModelMixin, CreateModelMixin, Upd
"""
op = self.get_object()
step = op.step
+ processId = op.step.process.id
if op.is_submited:
raise exceptions.APIException('该操作已提交')
omis = OperationMaterial.objects.filter(operation=op,
@@ -644,8 +646,9 @@ class OperationViewSet(ListModelMixin, RetrieveModelMixin, CreateModelMixin, Upd
'subproduction_plan', flat=True)
if set(list(sps_omi_l)) != set(list(sps_omo_l)):
raise exceptions.APIException('消耗与产出不一致')
-
- # 实际消耗物料校验
+ else:
+ if not omis.exists() and processId !=1: # 不是冷加工
+ raise exceptions.APIException('请选择消耗物料')
# 检查自定义表单填写
if OperationRecord.objects.filter(operation=op, is_filled=False).exists():
@@ -747,7 +750,6 @@ class OperationViewSet(ListModelMixin, RetrieveModelMixin, CreateModelMixin, Upd
wproduct.act_state = WProduct.WPR_ACT_STATE_DOWAIT
if needTest:
wproduct.act_state = WProduct.WPR_ACT_STATE_TOTEST
- wproduct.material_check = wproduct.product
# 更新子计划进度
WpmService.update_subproduction_progress_main(
@@ -766,7 +768,7 @@ class OperationViewSet(ListModelMixin, RetrieveModelMixin, CreateModelMixin, Upd
op.save()
# 如果是冷加工
- if step.process.id == 1:
+ if processId == 1:
WpmService.update_cutting_list_with_operation(op=op)
return Response()
diff --git a/hb_server/requirements.txt b/hb_server/requirements.txt
index 500f758..72fa958 100644
--- a/hb_server/requirements.txt
+++ b/hb_server/requirements.txt
@@ -12,3 +12,4 @@ pillow==8.3.1
opencv-python==4.5.3.56
django-celery-results==2.2.0
numpy==1.21.2
+workalendar==16.2.0
diff --git a/hb_server/server/settings.py b/hb_server/server/settings.py
index 1d11566..2890f6b 100644
--- a/hb_server/server/settings.py
+++ b/hb_server/server/settings.py
@@ -63,6 +63,8 @@ INSTALLED_APPS = [
'apps.develop'
]
+X_FRAME_OPTIONS = 'SAMEORIGIN'
+
MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',