diff --git a/src/api/report/productionDailyReport.js b/src/api/report/productionDailyReport.js
new file mode 100644
index 0000000..bbc8a36
--- /dev/null
+++ b/src/api/report/productionDailyReport.js
@@ -0,0 +1,37 @@
+import request from '@/utils/request'
+
+// 查询生产日报汇总
+export function getProductionDailySummary(query) {
+ return request({
+ url: '/report/productionDailyReport/summary',
+ method: 'get',
+ params: query
+ })
+}
+
+// 查询生产日报按日汇总
+export function listProductionDaily(query) {
+ return request({
+ url: '/report/productionDailyReport/dailyList',
+ method: 'get',
+ params: query
+ })
+}
+
+// 查询生产日报计划工单明细
+export function listProductionDailyOrders(query) {
+ return request({
+ url: '/report/productionDailyReport/orderList',
+ method: 'get',
+ params: query
+ })
+}
+
+// 查询生产日报设备产出明细
+export function listProductionDailyDevices(query) {
+ return request({
+ url: '/report/productionDailyReport/deviceList',
+ method: 'get',
+ params: query
+ })
+}
diff --git a/src/router/index.js b/src/router/index.js
index 50dcc4f..7591dab 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -326,6 +326,20 @@ export const dynamicRoutes = [
},
],
},
+ {
+ path: '/report/productionDailyReport',
+ component: Layout,
+ hidden: true,
+ permissions: ['base:orderInfo:list'],
+ children: [
+ {
+ path: 'index',
+ component: () => import('@/views/report/productionDailyReport/index'),
+ name: 'ProductionDailyReport',
+ meta: { title: '生产日报', activeMenu: '/base/orderInfo/execution' }
+ }
+ ]
+ },
{
path: "/base/bom-info",
component: Layout,
diff --git a/src/views/report/productionDailyReport/index.vue b/src/views/report/productionDailyReport/index.vue
new file mode 100644
index 0000000..c1c2fdb
--- /dev/null
+++ b/src/views/report/productionDailyReport/index.vue
@@ -0,0 +1,297 @@
+
+
+
+
+
+ 日报
+ 月报
+
+
+
+
+
+
+
+
+
+ 搜索
+ 重置
+ 返回工单执行
+
+
+
+
+
+
+ {{ item.label }}
+ {{ item.value }}
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ formatNumber(scope.row.planQty) }}
+
+
+ {{ formatNumber(scope.row.actualQty) }}
+
+
+ {{ formatNumber(scope.row.goodQty) }}
+
+
+ {{ formatNumber(scope.row.defectQty) }}
+
+
+ {{ formatPercent(scope.row.completionRate) }}
+
+
+ {{ formatPercent(scope.row.goodRate) }}
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ formatNumber(scope.row.planQty) }}
+
+
+
+
+
+
+
+
+
+
+
+ {{ formatNumber(scope.row.actualQty) }}
+
+
+
+
+
+
+
+
+
+
+