Browse Source

Merge branch 'master' of https://git.7in6.com/Minong/mes-admin-backend-ui

tty 1 year ago
parent
commit
4edf19e5c3

+ 270 - 0
src/api/jixiaoguanli/jitairibaobiao.js

@@ -149,4 +149,274 @@ export const getYg = (params) => {
     method: 'get',
     params
   })
+}
+
+
+export const getMachineGxMc = (params) => {
+  return service({
+    url:'/mes_server/inspect/getMachineGxMc',
+    method: 'get',
+    params
+  })
+}
+
+
+export const getMachineDedh = (params) => {
+  return service({
+    url:'/mes_server/inspect/getMachineDedh',
+    method: 'get',
+    params
+  })
+}
+
+export const getMachineScrapFactor = (params) => {
+  return service({
+    url:'/mes_server/inspect/getMachineScrapFactor',
+    method: 'get',
+    params
+  })
+}
+
+export const getJtbh = (params) => {
+  return service({
+    url:'/mes_server/inspect/getJtbh',
+    method: 'get',
+    params
+  })
+}
+
+export const machineEdit = (params) => {
+  return service({
+    url:'/mes_server/inspect/machineEdit',
+    method: 'post',
+    params
+  })
+}
+
+
+export const machineDel = (params) => {
+  return service({
+    url:'/mes_server/inspect/machineDel',
+    method: 'post',
+    params
+  })
+}
+//手工检验
+//定位
+export const  shougonglocate= (params) => {
+  return service({
+    url:'/mes_server/inspect/locate',
+    method: 'get',
+    params
+  })
+}
+//获取详细信息
+export const  shougonggetInfo= (params) => {
+  return service({
+    url:'/mes_server/inspect/getInfo',
+    method: 'get',
+    params
+  })
+}
+//查询印件工序及产品名称
+export const  shougonggetGxMc= (params) => {
+  return service({
+    url:'/mes_server/inspect/getGxMc',
+    method: 'get',
+    params
+  })
+}
+//获取定额代号
+export const  shougonggetDedh= (params) => {
+  return service({
+    url:'/mes_server/inspect/getDedh',
+    method: 'get',
+    params
+  })
+}
+//查询废品系数
+export const  shougonggetScrapFactor= (params) => {
+  return service({
+    url:'/mes_server/inspect/getScrapFactor',
+    method: 'get',
+    params
+  })
+}
+//修改
+export const  shougongedit= (params) => {
+  return service({
+    url:'/mes_server/inspect/edit',
+    method: 'post',
+    params
+  })
+}
+//删除
+export const  shougongdel= (params) => {
+  return service({
+    url:'/mes_server/inspect/del',
+    method: 'post',
+    params
+  })
+}
+//按工单显示
+export const  getInspectCountByGdbh= (params) => {
+  return service({
+    url:'/mes_server/inspect/getInspectCountByGdbh',
+    method: 'get',
+    params
+  })
+}
+//机台生产日报表维护附加
+//获取详细信息
+export const  addgetInfo= (params) => {
+  return service({
+    url:'/mes_server/machine_production_report_add/getInfo',
+    method: 'get',
+    params
+  })
+}
+//获取机台
+export const  addgetJtbh= (params) => {
+  return service({
+    url:'/mes_server/machine_production_report_add/getJtbh',
+    method: 'get',
+    params
+  })
+}
+//修改
+export const  addedit= (params) => {
+  return service({
+    url:'/mes_server/machine_production_report_add/edit',
+    method: 'post',
+    params
+  })
+}
+//删除
+export const  adddel= (params) => {
+  return service({
+    url:'/mes_server/machine_production_report_add/del',
+    method: 'post',
+    params
+  })
+}
+//按工单显示
+export const  getMachineCountByGdbh= (params) => {
+  return service({
+    url:'/mes_server/inspect/getMachineCountByGdbh',
+    method: 'get',
+    params
+  })
+}
+//机台日报表维护
+//定位
+export const  productionlocate= (params) => {
+  return service({
+    url:'/mes_server/machine_production_report/locate',
+    method: 'get',
+    params
+  })
+}
+//按工单显示
+export const  productionByGdbh= (params) => {
+  return service({
+    url:'/mes_server/machine_production_report/getTabByGdbh',
+    method: 'get',
+    params
+  })
+}
+//获取详细信息
+export const  productionInfo= (params) => {
+  return service({
+    url:'/mes_server/machine_production_report/getInfo',
+    method: 'get',
+    params
+  })
+}
+//获取工单名称
+export const  productionGdmc= (params) => {
+  return service({
+    url:'/mes_server/machine_production_report/getGdmc',
+    method: 'get',
+    params
+  })
+}
+//获取印件名称
+export const  productionYjmc= (params) => {
+  return service({
+    url:'/mes_server/machine_production_report/getYjmc',
+    method: 'get',
+    params
+  })
+}
+//获取工序信息
+export const  productionGx= (params) => {
+  return service({
+    url:'/mes_server/machine_production_report/getGx',
+    method: 'get',
+    params
+  })
+}
+//获取定额代号
+export const  productionDedh= (params) => {
+  return service({
+    url:'/mes_server/machine_production_report/getDedh',
+    method: 'get',
+    params
+  })
+}
+//修改
+export const  productionedit= (params) => {
+  return service({
+    url:'/mes_server/machine_production_report/edit',
+    method: 'post',
+    params
+  })
+}
+//删除
+export const  productiondel= (params) => {
+  return service({
+    url:'/mes_server/machine_production_report/del',
+    method: 'post',
+    params
+  })
+}
+//员工日工资
+//员工日工资查询侧边栏
+export const  dailygetTab= () => {
+  return service({
+    url:'/mes_server/employee_daily_salary/getTab',
+    method: 'get',
+  })
+}
+//员工日工资查询上侧列表
+export const  dailygetList= (params) => {
+  return service({
+    url:'/mes_server/employee_daily_salary/getList',
+    method: 'get',
+	params
+  })
+}
+//员工日工资查询下侧列表
+export const  dailygetAllList= (params) => {
+  return service({
+    url:'/mes_server/employee_daily_salary/getAllList',
+    method: 'get',
+	params
+  })
+}
+//员工日工资查询详情
+export const  dailygetDetail= (params) => {
+  return service({
+    url:'/mes_server/employee_daily_salary/getDetail',
+    method: 'get',
+	params
+  })
+}
+//员工定位
+export const  dailysearch= (params) => {
+  return service({
+    url:'/mes_server/employee_daily_salary/search',
+    method: 'get',
+	params
+  })
 }

+ 243 - 18
src/api/yunyin/yunying.js

@@ -1,4 +1,5 @@
 import service from '@/utils/request'
+
 /** 员工基本资料管理 */
 //1.获取部门列表
 export const getDepartment = (data) => {
@@ -17,11 +18,11 @@ export const getStaffList = (params) => {
     })
 }
 //3.修改员工资料
-export const ygjbzledit = (params) => {
+export const ygjbzledit = (data) => {
     return service({
         url: '/mes_server/staff/edit',
         method: 'post',
-        params
+        data
     })
 }
 
@@ -62,7 +63,7 @@ export const getProductGy = (params) => {
 export const editGy = (data) => {
     return service({
         url: '/mes_server/product/editGy',
-        method: 'get',
+        method: 'post',
         data
     })
 }
@@ -70,7 +71,7 @@ export const editGy = (data) => {
 export const editProduct = (data) => {
     return service({
         url: '/mes_server/product/editProduct',
-        method: 'get',
+        method: 'post',
         data
     })
 }
@@ -85,11 +86,19 @@ export const setProductStatus = (data) => {
 //8.1获取产品工艺数量
 export const getGyTotal = (data) => {
     return service({
-        url: '/mes_serve/product/getGyTotal',
+        url: '/mes_server/product/getGyTotal',
         method: 'get',
         data
     })
 }
+//8.2产品工艺复制(数据库不支持插入数据)
+// export const copyProductGy = (data) => {
+//     return service({
+//         url: '/mes_server/product/copyProductGy',
+//         method: 'post',
+//         data
+//     })
+// }
 //9.工艺方案更名
 export const editGyName = (data) => {
     return service({
@@ -101,7 +110,7 @@ export const editGyName = (data) => {
 //10.工艺方案附加
 export const editGyNo = (data) => {
     return service({
-        url: '/mes_serve/product/editGyNo',
+        url: '/mes_server/product/editGyNo',
         method: 'post',
         data
     })
@@ -109,7 +118,7 @@ export const editGyNo = (data) => {
 //11.计损色数修正
 export const editGyMs = (data) => {
     return service({
-        url: '/mes_serve/product/editGyMs',
+        url: '/mes_server/product/editGyMs',
         method: 'post',
         data
     })
@@ -117,11 +126,12 @@ export const editGyMs = (data) => {
 //12.质检废品系数
 export const editGyWaste = (data) => {
     return service({
-        url: '/mes_serve/product/editGyWaste',
+        url: '/mes_server/product/editGyWaste',
         method: 'post',
         data
     })
 }
+
 /** 生产管理 工单资料管理*/
 // 1.工单资料菜单列表
 export const DataList = (params) => {
@@ -173,7 +183,6 @@ export const DataCorrection = (params) => {
     })
 }
 
-
 //工单差改->修改工单信息
 export const WorkOrderEdit = (params) => {
     return service({
@@ -193,7 +202,6 @@ export const ProductInformation = (params) => {
     })
 }
 
-
 //引用产品资料->修改产品资料
 export const ProductInformationEdit = (params) => {
     return service({
@@ -202,17 +210,81 @@ export const ProductInformationEdit = (params) => {
         params
     })
 }
-
-
-/**工单生产排单(排产管理)*/
-//左侧车间机台菜单
-export const workbench = (data) => {
+//工艺流程调整->获取当前工单工艺资料
+export const ProcessFlow = (params) => {
     return service({
-        url: '/mes_server/manufacture/workbench',
+        url: '/mes_server/work_order/ProcessFlow',
         method: 'get',
-        data
+        params
     })
 }
+//工艺流程调整->参照工单列表获取
+export const ReferenceWorkOrder = (params) => {
+    return service({
+        url: '/mes_server/work_order/ReferenceWorkOrder',
+        method: 'get',
+        params
+    })
+}
+//工艺流程调整->工艺资料修改
+export const ProcessCopy = (params) => {
+    return service({
+        url: '/mes_server/work_order/ProcessCopy',
+        method: 'post',
+        params
+    })
+}
+// 查改U8工单(工单删除)
+export const U8DataCorrection = (params) => {
+    return service({
+        url: '/mes_server/work_order/U8DataCorrection',
+        method: 'get',
+        params
+    })
+}
+//质检废品系数->质检工艺数据获取
+export const TestCoefficient = (params) => {
+    return service({
+        url: '/mes_server/work_order/TestCoefficient',
+        method: 'get',
+        params
+    })
+}
+//质检废品系数->质检系数更新
+export const TestCoefficientEdit = (params) => {
+    return service({
+        url: '/mes_server/work_order/TestCoefficientEdit',
+        method: 'post',
+        params
+    })
+}
+//修正工单核算参数->数据获取
+export const AccountingParameter = (params) => {
+    return service({
+        url: '/mes_server/work_order/AccountingParameter',
+        method: 'get',
+        params
+    })
+}
+//修正工单核算参数->参数修改
+export const AccountingParameterEdit = (params) => {
+    return service({
+        url: '/mes_server/work_order/AccountingParameterEdit',
+        method: 'post',
+        params
+    })
+}
+//U8投料试算
+export const U8Trial = (params) => {
+    return service({
+        url: '/mes_server/work_order/U8Trial',
+        method: 'get',
+        params
+    })
+}
+
+
+/**工单生产排单(排产管理)*/
 //计划中工单
 export const Project = (data) => {
     return service({
@@ -237,6 +309,14 @@ export const projectPrint = (params) => {
         params
     })
 }
+//左侧车间机台菜单
+export const workbench = (data) => {
+    return service({
+        url: '/mes_server/manufacture/workbench',
+        method: 'get',
+        data
+    })
+}
 //生产中工单工序接口
 export const scheduleProcess = (data) => {
     return service({
@@ -245,6 +325,80 @@ export const scheduleProcess = (data) => {
         data
     })
 }
+//查找工单
+export const WorkOrderSearch = (data) => {
+    return service({
+        url: '/mes_server/manufacture/WorkOrderSearch',
+        method: 'get',
+        data
+    })
+}
+//工序完工
+export const complete = (data) => {
+    return service({
+        url: '/mes_server/manufacture/complete',
+        method: 'get',
+        data
+    })
+}
+//加入排产
+export const ProductionSchedulingAdd = (data) => {
+    return service({
+        url: '/mes_server/manufacture/ProductionSchedulingAdd',
+        method: 'post',
+        data
+    })
+}
+//暂停排产
+export const ProductionSchedulingPause = (data) => {
+    return service({
+        url: '/mes_server/manufacture/ProductionSchedulingPause',
+        method: 'post',
+        data
+    })
+}
+//工序状态更正
+export const ProcessStatusCorrection = (data) => {
+    return service({
+        url: '/mes_server/manufacture/ProcessStatusCorrection',
+        method: 'get',
+        data
+    })
+}
+//班次选择列表
+export const ScheduleSelection = (data) => {
+    return service({
+        url: '/mes_server/manufacture/ScheduleSelection',
+        method: 'get',
+        data
+    })
+}
+//车间设备排程->数据展示
+export const EquipmentScheduling = (data) => {
+    return service({
+        url: '/mes_server/manufacture/EquipmentScheduling',
+        method: 'get',
+        data
+    })
+}
+//车间设备排程->数据编辑
+export const EquipmentSchedulingEdit = (data) => {
+    return service({
+        url: '/mes_server/manufacture/EquipmentSchedulingEdit',
+        method: 'post',
+        data
+    })
+}
+
+//工单状态设置
+export const StatusEdit = (data) => {
+    return service({
+        url: '/mes_server/manufacture/StatusEdit',
+        method: 'post',
+        data
+    })
+}
+
 
 /** 7.设备运行跟踪*/
 //左侧菜单
@@ -255,7 +409,6 @@ export const getTab = (params) => {
         params
     })
 }
-
 //当日上报产量
 export const chanLiang = (params) => {
     return service({
@@ -263,4 +416,76 @@ export const chanLiang = (params) => {
         method: 'get',
         params
     })
+}
+//当日制程检验记录
+export const Inspect = (params) => {
+    return service({
+        url: '/mes_server/facility/Inspect',
+        method: 'get',
+        params
+    })
+}
+//当前生产订单
+export const Production = (params) => {
+    return service({
+        url: '/mes_server/facility/Production',
+        method: 'get',
+        params
+    })
+}
+//设备工作清单
+export const EquipmentWorklist = (params) => {
+    return service({
+        url: '/mes_server/facility/EquipmentWorklist',
+        method: 'get',
+        params
+    })
+}
+//印件、工序、完成数量
+export const Procedure = (params) => {
+    return service({
+        url: '/mes_server/facility/Procedure',
+        method: 'get',
+        params
+    })
+}
+//班组人员及分配比例
+export const Team = (params) => {
+    return service({
+        url: '/mes_server/facility/Team',
+        method: 'get',
+        params
+    })
+}
+//当班产量明细
+export const OutputDetail = (params) => {
+    return service({
+        url: '/mes_server/facility/OutputDetail',
+        method: 'get',
+        params
+    })
+}
+//检验记录
+export const InspectionRecord = (params) => {
+    return service({
+        url: '/mes_server/facility/InspectionRecord',
+        method: 'get',
+        params
+    })
+}
+//班组维护->机台编号下拉框
+export const MachineList = (params) => {
+    return service({
+        url: '/mes_server/facility/MachineList',
+        method: 'get',
+        params
+    })
+}
+//班组维护->删除当前班组
+export const teamDel = (params) => {
+    return service({
+        url: '/mes_server/facility/teamDel',
+        method: 'get',
+        params
+    })
 }

+ 180 - 170
src/view/performance/Dayreportattached.vue

@@ -20,13 +20,15 @@
               </el-row>
               <el-button type="primary" :icon="Search" @click="onSearch">搜索</el-button>
               <el-button type="primary" :icon="Refresh">重置</el-button>
+			  <el-button type="primary"  @click="onDel">删除</el-button>
               <div style="margin-left: auto;">
                 <el-button type="primary" :icon="Download" @click="exportExcel">导出到Excel</el-button>
               </div>
             </div>
             <!-- 数据展示 -->
             <el-table ref="multipleTable" style="width: 100%" tooltip-effect="dark" :data="tableData" row-key="ID"
-              highlight-current-row="true" border @selection-change="handleSelectionChange" :show-overflow-tooltip="true" @row-dblclick="doubleClick">
+              highlight-current-row="true" border @selection-change="handleSelectionChange" 
+			  :show-overflow-tooltip="true" @row-dblclick="doubleClick">
               <el-table-column type="selection" width="55" />
               <el-table-column align="left" label="生产日期" prop="sczl_rq" width="120"/>
               <el-table-column align="left" label="设备编号" prop="sczl_jtbh" width="120"/>
@@ -58,7 +60,7 @@
                   <el-form-item label="日期" prop="name">
                     <el-row :gutter="20">
                       <el-col :span="12">
-                        <el-input v-model="formData.code" :clearable="true" placeholder="ZT01733" />
+                        <el-input v-model="formData.sczl_rq" :clearable="true" placeholder="ZT01733" />
                       </el-col>
                     </el-row>
                   </el-form-item>
@@ -70,11 +72,11 @@
                   <el-row :gutter="20">
                     <el-col :span="14">
                       <el-form-item label="机器" prop="id">
-                        <el-input v-model="formData.address" :clearable="true" placeholder="0.00" />
+                        <el-input v-model="formData.sczl_jtbh" @keyup.enter.native="getJTsubmit" :clearable="true" placeholder="0.00" />
                       </el-form-item>
                     </el-col>
                     <el-col :span="10">                     
-                        <el-input v-model="formData.address" :clearable="true" placeholder="是" />
+                        <el-input v-model="formData.设备名称" :clearable="true" placeholder="是" />
                     </el-col>
                   </el-row>
                 </el-col>
@@ -86,12 +88,12 @@
 			      <el-row :gutter="20">
 			        <el-col :span="14">
 			          <el-form-item label="组别" prop="id">
-			            <el-input v-model="formData.address" :clearable="true" placeholder="0.00" />
+			            <el-input v-model="formData.sczl_bzdh" :clearable="true" placeholder="0.00" />
 			          </el-form-item>
 			        </el-col>
 			        <el-col :span="10">
 			            <el-form-item label="通电时间" prop="id">
-			            <el-input v-model="formData.address" :clearable="true" placeholder="是" />
+			            <el-input v-model="formData.sczl_设备运行工时" :clearable="true" placeholder="是" />
 			            </el-form-item>
 			        </el-col>
 			      </el-row>
@@ -103,7 +105,7 @@
 			      <el-row :gutter="20">
 			        <el-col :span="14">
 			        <el-form-item label="备注" prop="id" style="margin-top: 10px;">
-			          <el-input v-model="formData.address" :clearable="true" placeholder="" />
+			          <el-input v-model="formData.sczl_desc" :clearable="true" placeholder="" />
 			        </el-form-item>
 			        </el-col>
 			      </el-row>
@@ -120,6 +122,21 @@
             </template>
           </el-dialog>
 
+          
+		  <el-dialog
+		    v-model="GetjtbhVisible"
+		    title="选择"
+		    destroy-on-close
+		    width="600px"
+		  			>		     
+		       <el-aside width="250px">
+		         <div class="JKWTree-tree">		          
+		           <el-tree :data="GetJTtreeData" :props="defaultProps" highlight-current="true"
+		             @node-click="GetMachineDedhhandleNodeClick" @node-dblclick="handleNodeDoubleClick"></el-tree>
+		         </div>
+		       </el-aside>		       
+		  </el-dialog>
+		  
         </el-main>
       </el-container>
     </el-container>
@@ -130,7 +147,11 @@
 <script setup>
 import {
   getproductionaddList,
-  getproductionaddCount
+  getproductionaddCount,
+  adddel,
+  addedit,
+  addgetJtbh,
+  addgetInfo,
 } from '@/api/jixiaoguanli/jitairibaobiao'
 
 // 全量引入格式化工具 请按需保留
@@ -173,18 +194,12 @@ getTabdata();
 
 // 自动化生成的字典(可能为空)以及字段
 const formData = ref({
-  id: '',
-  name: '',
-  date: '',
-  group: '',
-  packingOutput: '',
-  reworkOutput: '',
-  pieceOutput: '',
-  order: '',
-  user: '',
-  createTime: '',
-  updateTime: '',
-  uniqid: '',
+			 sczl_rq: '',
+             sczl_jtbh: '',
+             设备名称: '',
+             sczl_bzdh: '',
+             sczl_设备运行工时: '',
+             sczl_desc: '',
 })
 
 // 验证规则
@@ -196,128 +211,7 @@ const elSearchFormRef = ref()
 
 // =========== 表格控制部分 ===========
 const tableData = reactive([])
-const detailData = reactive([
-  {
-    gdbh: '2311736',
-    yjgx: '01-15',
-    gxmc: '包装(圆切)',
-    yjmc: '利群(新)小《降焦改版)',
-    bzcl: '13.00',
-    fgcl: '0.00',
-    mxsl: '2500',
-    jcxs: '1.000',
-    ly: '',
-    dedh: '030002002',
-  },
-  {
-    gdbh: '2311736',
-    yjgx: '01-15',
-    gxmc: '包装(圆切)',
-    yjmc: '利群(新)小《降焦改版)',
-    bzcl: '13.00',
-    fgcl: '0.00',
-    mxsl: '2500',
-    jcxs: '1.000',
-    ly: '',
-    dedh: '030002002',
-  },
-  {
-    gdbh: '2311736',
-    yjgx: '01-15',
-    gxmc: '包装(圆切)',
-    yjmc: '利群(新)小《降焦改版)',
-    bzcl: '13.00',
-    fgcl: '0.00',
-    mxsl: '2500',
-    jcxs: '1.000',
-    ly: '',
-    dedh: '030002002',
-  },
-  {
-    gdbh: '2311736',
-    yjgx: '01-15',
-    gxmc: '包装(圆切)',
-    yjmc: '利群(新)小《降焦改版)',
-    bzcl: '13.00',
-    fgcl: '0.00',
-    mxsl: '2500',
-    jcxs: '1.000',
-    ly: '',
-    dedh: '030002002',
-  },
-  {
-    gdbh: '2311736',
-    yjgx: '01-15',
-    gxmc: '包装(圆切)',
-    yjmc: '利群(新)小《降焦改版)',
-    bzcl: '13.00',
-    fgcl: '0.00',
-    mxsl: '2500',
-    jcxs: '1.000',
-    ly: '',
-    dedh: '030002002',
-  },
-  {
-    gdbh: '2311736',
-    yjgx: '01-15',
-    gxmc: '包装(圆切)',
-    yjmc: '利群(新)小《降焦改版)',
-    bzcl: '13.00',
-    fgcl: '0.00',
-    mxsl: '2500',
-    jcxs: '1.000',
-    ly: '',
-    dedh: '030002002',
-  },
-  {
-    gdbh: '2311736',
-    yjgx: '01-15',
-    gxmc: '包装(圆切)',
-    yjmc: '利群(新)小《降焦改版)',
-    bzcl: '13.00',
-    fgcl: '0.00',
-    mxsl: '2500',
-    jcxs: '1.000',
-    ly: '',
-    dedh: '030002002',
-  },
-  {
-    gdbh: '2311736',
-    yjgx: '01-15',
-    gxmc: '包装(圆切)',
-    yjmc: '利群(新)小《降焦改版)',
-    bzcl: '13.00',
-    fgcl: '0.00',
-    mxsl: '2500',
-    jcxs: '1.000',
-    ly: '',
-    dedh: '030002002',
-  },
-  {
-    gdbh: '2311736',
-    yjgx: '01-15',
-    gxmc: '包装(圆切)',
-    yjmc: '利群(新)小《降焦改版)',
-    bzcl: '13.00',
-    fgcl: '0.00',
-    mxsl: '2500',
-    jcxs: '1.000',
-    ly: '',
-    dedh: '030002002',
-  },
-  {
-    gdbh: '2311736',
-    yjgx: '01-15',
-    gxmc: '包装(圆切)',
-    yjmc: '利群(新)小《降焦改版)',
-    bzcl: '13.00',
-    fgcl: '0.00',
-    mxsl: '2500',
-    jcxs: '1.000',
-    ly: '',
-    dedh: '030002002',
-  },
-])
+const detailData = reactive([])
 const total = ref(0)
 const page = ref(1)
 const limit = ref(10)
@@ -376,7 +270,21 @@ setOptions()
 const multipleSelection = ref([])
 // 多选
 const handleSelectionChange = (val) => {
-  multipleSelection.value = val
+  // multipleSelection.value = val
+  if(val.length>0){
+  	multipleSelection.value = val
+  	const lenth=val.length
+  	// ScrapFactor.gdbh=val[lenth-1].combinedProp.split('-')[0];
+  	// const parts = val[lenth-1].combinedProp2.split('-')
+  	// ScrapFactor.yjno=parts[0];
+  	// ScrapFactor.gxh=parts[1];
+  	// ScrapFactor.type=val[lenth-1].sczl_检验类别
+  	// console.log(ScrapFactor)
+  	lastCellValue=val[lenth-1].UniqId
+  	console.log(val)
+  	val.splice(0, val.length);  // 清空 val 数组	
+  	console.log(lastCellValue)
+  }
 }
 
 // 批量删除控制标记
@@ -443,39 +351,141 @@ const closeDialog = () => {
 }
 // 弹窗确定
 const enterDialog = async () => {
-  elFormRef.value?.validate(async (valid) => {
-    if (!valid) return
-    let res
-    switch (type.value) {
-      case 'create':
-        res = await createCompany(formData.value)
-        break
-      case 'update':
-        res = await updateCompany(formData.value)
-        break
-      default:
-        res = await createCompany(formData.value)
-        break
-    }
-    if (res.code === 0) {
-      ElMessage({
-        type: 'success',
-        message: '创建/更改成功'
-      })
-      closeDialog()
-      getTableData()
-    }
-  })
+	
+	
+  updateDetailData()
+  // elFormRef.value?.validate(async (valid) => {
+  //   if (!valid) return
+  //   let res
+  //   switch (type.value) {
+  //     case 'create':
+  //       res = await createCompany(formData.value)
+  //       break
+  //     case 'update':
+  //       res = await updateCompany(formData.value)
+  //       break
+  //     default:
+  //       res = await createCompany(formData.value)
+  //       break
+  //   }
+  //   if (res.code === 0) {
+  //     ElMessage({
+  //       type: 'success',
+  //       message: '创建/更改成功'
+  //     })
+  //     closeDialog()
+  //     getTableData()
+  //   }
+  // })
 }
-
+let table=ref(5);
+let lastCellValue=ref()
 // 双击表格操作
 function doubleClick(row, column, event) {
-  console.log(row, column, event);
-  // updateCompanyFunc(row);
   type.value = 'update';
-  dialogFormVisible.value = true
+  		  lastCellValue= row['UniqId'];
+    		 console.log(lastCellValue)
+  table.value=lastCellValue
+  	 dialogFormVisible.value = true
+	 AddgetInfo(table.value)
+}
+//获取详细信息
+const AddgetInfo = async (value) => {
+  const response = await addgetInfo({UniqId:value});
+  console.log(response) 
+  if (response.code === 0) {
+	formData.value=response.data[0];
+  }
 }
+//机台回车事件
+const getJTsubmit = (event, inputName) => {
+	  GetJtbh()
+}
+const GetjtbhVisible = ref(false)
+let GetJTtreeData = reactive([]);
+//获取机台
+const GetJtbh = async () => {
+  const response = await addgetJtbh({sys_mc:''});
+  if(response.code==0){
+	  // 遍历接口返回的数据,构建父子关系
+	GetJTtreeData.splice(0, GetJTtreeData.length);
+	response.data.forEach(item => {
+	  const departments = item["使用部门"];
+	  departments.forEach(department => {
+	    const departmentData = {
+	      label: department,
+	      value: department,
+	      children: item[department].map(device => {
+	        return {
+	          label: device["jtbh"]+'/'+device["设备名称"],
+	          value: device["jtbh"]
+	        };
+	      })
+	    };
+	    GetJTtreeData.push(departmentData);
+	  });
+	});
+		
+		
+		// 将父子关系转换为数组
+		// const transformedData = Object.values(treeData);
+		// console.log(transformedData)
+		// GetJTtreeData = transformedData;
+	  // JTBHselectData.splice(0, selectData.length, ...response.data)
+	  GetjtbhVisible.value=true
+	   
+  }
+  console.log(response)
+}
+const GetMachineDedhhandleNodeClick = (node,check,nodeData) => {
+  if (node.children) {
+       // 点击的是父节点
+       // 执行相应的父节点单击事件处理逻辑
+	   console.log('2222')
+     } else {
+       // 点击的是子节点
+       // 执行相应的子节点单击事件处理逻辑
+       console.log('11111');
+	   console.log(node.label)
+	   const splitIndex = node.label.indexOf('/');
+	   formData.value.sczl_jtbh = node.label.substring(0, splitIndex);
+	   formData.value.设备名称 = node.label.substring(splitIndex + 1);
+	    GetjtbhVisible.value=false
+     }
+}
+// 更新数据
+const updateDetailData = async() => {
+  const restoredData = {
+    UniqId: lastCellValue,
+	sczl_rq:formData.value.sczl_rq,
+	sczl_jtbh:formData.value.sczl_jtbh,
+	sczl_bzdh:formData.value.sczl_bzdh,
+	sczl_设备运行工时:formData.value.sczl_设备运行工时,
+	sczl_desc:formData.value.sczl_desc,
+  }
 
+  console.log(restoredData)
+    console.log(lastCellValue)
+    formData.value.UniqId=lastCellValue
+    console.log(formData)
+	restoredData.UniqId='10'
+   const response = await addedit(restoredData);
+  // console.log(FormData)
+  console.log(response)
+}
+删除
+const AddDel = async (value) => {
+  const response = await adddel({UniqId:'0'});
+  console.log(response) 
+  if (response.code === 0) {
+	 console.log('333') 
+  }
+}
+
+//删除
+function onDel() {
+	AddDel()
+}
 // 导出excel
 function exportExcel() {
   console.log('导出到excel');

+ 313 - 232
src/view/performance/Dayreports.vue

@@ -16,9 +16,10 @@
           <div class="gva-table-box">
             <div class="gva-btn-list">
               <el-row :span="6">
-                <el-input v-model="searchInfo" placeholder="输入工单编号或产品名称" />
+                <el-input v-model="positionvalue" placeholder="输入工单编号或产品名称" />
               </el-row>
               <el-button type="primary" :icon="Search" @click="onSearch">搜索</el-button>
+			  <el-button type="primary"  @click="onCountByGdbh">按工单显示</el-button>
               <el-button type="primary" :icon="Refresh">重置</el-button>
               <div style="margin-left: auto;">
                 <el-button type="primary" :icon="Download" @click="exportExcel">导出到Excel</el-button>
@@ -81,7 +82,8 @@
             </el-table>
             <!-- 分页 -->
             <div class="gva-pagination">
-              <el-pagination layout="total, sizes, prev, pager, next, jumper" :current-page="page" :page-size="limit"
+              <el-pagination layout="total, sizes, prev, pager, next, jumper" v-model:current-page="page"
+                v-model:page-size="limit"
                 :page-sizes="[10, 30, 50, 100]" :total="total" @current-change="handleCurrentChange"
                 @size-change="handleSizeChange" />
             </div>
@@ -95,14 +97,14 @@
               <el-row :gutter="20">
                 <el-col :span="4">
                   <el-form-item label="工单编号" prop="id">
-                    <el-input v-model="formData.address" :clearable="true" placeholder="2023.12.14" />
+                    <el-input v-model="formData.sczl_gdbh" :clearable="true" placeholder="2023.12.14" />
                   </el-form-item>
                 </el-col>
                 <el-col :span="6">
                   <el-form-item label="产品名称" prop="name">
                     <el-row :gutter="20">
                       <el-col :span="12">
-                        <el-input v-model="formData.code" :clearable="true" placeholder="ZT01733" />
+                        <el-input v-model="formData.Gd_cpmc" :clearable="true" placeholder="ZT01733" />
                       </el-col>                      
                     </el-row>
                   </el-form-item>
@@ -114,12 +116,12 @@
                   <el-row :gutter="20">
                     <el-col :span="14">
                       <el-form-item label="印件号" prop="id">
-                        <el-input v-model="formData.address" :clearable="true" placeholder="0.00" />
+                        <el-input v-model="formData.sczl_yjno" :clearable="true" placeholder="0.00" />
                       </el-form-item>
                     </el-col>
                     <el-col :span="10">
                       <el-form-item label="印件名称" prop="id">
-                        <el-input v-model="formData.address" :clearable="true" placeholder="是" />
+                        <el-input v-model="formData.yj_yjmc" :clearable="true" placeholder="是" />
                       </el-form-item>
                     </el-col>
                   </el-row>
@@ -129,19 +131,19 @@
              <el-row :gutter="20">
                 <el-col :span="4">
                   <el-form-item label="工序名称" prop="id">
-                    <el-input v-model="formData.address" :clearable="true" placeholder="2023.12.14" />
+                    <el-input v-model="formData.sczl_gxmc" :clearable="true" placeholder="2023.12.14" />
                   </el-form-item>
                 </el-col>
                 <el-col :span="6">          
                     <el-row :gutter="20">
                       <el-col :span="12">
-                        <el-input v-model="formData.code" :clearable="true" placeholder="ZT01733" />
+                        <el-input v-model="formData.sczl_gxh" :clearable="true" placeholder="ZT01733" />
                       </el-col>
                     </el-row>
                 </el-col>
                 <el-col :span="3">
                   <el-form-item label="工艺名称" prop="name">
-                    <el-input v-model="formData.image" :clearable="true" placeholder="A班" />
+                    <el-input v-model="formData.sczl_type" :clearable="true" placeholder="A班" />
                   </el-form-item>
                 </el-col>
               </el-row>
@@ -150,21 +152,21 @@
 			  <el-row :gutter="20">
 			     <el-col :span="4">
 			       <el-form-item label="日期" prop="id">
-			         <el-input v-model="formData.address" :clearable="true" placeholder="2023.12.14" />
+			         <el-input v-model="formData.sczl_rq" :clearable="true" placeholder="2023.12.14" />
 			       </el-form-item>
 			     </el-col>
 			     <el-col :span="6">          
 			         <el-row :gutter="20">
 			           <el-col :span="12">
 						<el-form-item label="机器" prop="id">
-			             <el-input v-model="formData.code" :clearable="true" placeholder="ZT01733" />
+			             <el-input v-model="formData.sczl_jtbh" :clearable="true" placeholder="ZT01733" />
 						</el-form-item>
 			           </el-col>
 			         </el-row>
 			     </el-col>
 			     <el-col :span="3">
 			       <el-form-item label="组别" prop="name">
-			         <el-input v-model="formData.image" :clearable="true" placeholder="A班" />
+			         <el-input v-model="formData.sczl_bzdh" :clearable="true" placeholder="A班" />
 			       </el-form-item>
 			     </el-col>
 			   </el-row>
@@ -172,26 +174,26 @@
 			  <el-row :gutter="20">
 			     <el-col :span="4">
 			       <el-form-item label="墨色" prop="id">
-			         <el-input v-model="formData.address" :clearable="true" placeholder="2023.12.14" />
+			         <el-input v-model="formData.sczl_ms" :clearable="true" placeholder="2023.12.14" />
 			       </el-form-item>
 			     </el-col>
 			     <el-col :span="6">          
 			         <el-row :gutter="20">
 			           <el-col :span="12">
 						 <el-form-item label="加工联数" prop="id">
-			             <el-input v-model="formData.code" :clearable="true" placeholder="ZT01733" />
+			             <el-input v-model="formData.sczl_ls" :clearable="true" placeholder="ZT01733" />
 						 </el-form-item>
 			           </el-col>
 			         </el-row>
 			     </el-col>
 			     <el-col :span="3">
 			       <el-form-item label="产量" prop="name">
-			         <el-input v-model="formData.image" :clearable="true" placeholder="A班" />
+			         <el-input v-model="formData.sczl_cl" :clearable="true" placeholder="A班" />
 			       </el-form-item>
 			     </el-col>
 				 <el-col :span="3">
 				   <el-form-item label="制程废品" prop="name">
-				     <el-input v-model="formData.image" :clearable="true" placeholder="A班" />
+				     <el-input v-model="formData.sczl_zcfp" :clearable="true" placeholder="A班" />
 				   </el-form-item>
 				 </el-col>
 			   </el-row>
@@ -200,26 +202,26 @@
 			   <el-row :gutter="20">
 			      <el-col :span="4">
 			        <el-form-item label="装版总工时" prop="id">
-			          <el-input v-model="formData.address" :clearable="true" placeholder="2023.12.14" />
+			          <el-input v-model="formData.sczl_装版总工时" :clearable="true" placeholder="2023.12.14" />
 			        </el-form-item>
 			      </el-col>
 			      <el-col :span="6">          
 			          <el-row :gutter="20">
 			            <el-col :span="12">
 			   						 <el-form-item label="装版补产工时" prop="id">
-			              <el-input v-model="formData.code" :clearable="true" placeholder="ZT01733" />
+			              <el-input v-model="formData.sczl_装版工时" :clearable="true" placeholder="ZT01733" />
 			   						 </el-form-item>
 			            </el-col>
 			          </el-row>
 			      </el-col>
 			      <el-col :span="3">
 			        <el-form-item label="保养工时" prop="name">
-			          <el-input v-model="formData.image" :clearable="true" placeholder="A班" />
+			          <el-input v-model="formData.sczl_保养工时" :clearable="true" placeholder="A班" />
 			        </el-form-item>
 			      </el-col>
 			   				 <el-col :span="3">
 			   				   <el-form-item label="异常停机" prop="name">
-			   				     <el-input v-model="formData.image" :clearable="true" placeholder="A班" />
+			   				     <el-input v-model="formData.sczl_异常停机工时" :clearable="true" placeholder="A班" />
 			   				   </el-form-item>
 			   				 </el-col>
 			    </el-row>
@@ -228,21 +230,21 @@
 			  <el-row :gutter="20">
 			     <el-col :span="4">
 			       <el-form-item label="打样总工时" prop="id">
-			         <el-input v-model="formData.address" :clearable="true" placeholder="2023.12.14" />
+			         <el-input v-model="formData.sczl_打样总工时" :clearable="true" placeholder="2023.12.14" />
 			       </el-form-item>
 			     </el-col>
 			     <el-col :span="6">          
 			         <el-row :gutter="20">
 			           <el-col :span="12">
 			  						 <el-form-item label="打样补产工时" prop="id">
-			             <el-input v-model="formData.code" :clearable="true" placeholder="ZT01733" />
+			             <el-input v-model="formData.sczl_打样工时" :clearable="true" placeholder="ZT01733" />
 			  						 </el-form-item>
 			           </el-col>
 			         </el-row>
 			     </el-col>
 			     <el-col :span="3">
 			       <el-form-item label="通电时间" prop="name">
-			         <el-input v-model="formData.image" :clearable="true" placeholder="A班" />
+			         <el-input v-model="formData.sczl_设备运行工时" :clearable="true" placeholder="A班" />
 			       </el-form-item>
 			     </el-col>			  				
 			   </el-row>
@@ -255,18 +257,41 @@
 			         <el-row :gutter="20">
 			           <el-col :span="12">
 			  						 <el-form-item label="拆片联拼系数" prop="id">
-			             <el-input v-model="formData.code" :clearable="true" placeholder="ZT01733" />
+			             <el-input v-model="formData.拆片联拼系数" :clearable="true" placeholder="ZT01733" />
 			  						 </el-form-item>
 			           </el-col>
 			         </el-row>
 			     </el-col>
 			     <el-col :span="3">
 			       <el-form-item label="拆片条小盒系数" prop="name">
-			         <el-input v-model="formData.image" :clearable="true" placeholder="A班" />
+			         <el-input v-model="formData.拆片条小盒系数" :clearable="true" placeholder="A班" />
 			       </el-form-item>
 			     </el-col>			  				 
 			   </el-row>
 			  
+			  <el-row :gutter="20">
+			     <el-col :span="4">			       
+			     </el-col>
+			     <el-col :span="6">          
+			         <el-row :gutter="20">
+			           <el-col :span="12">
+			  						 <el-form-item label="定额代号" prop="id">
+			             <el-input v-model="formData.sczl_dedh" :clearable="true" placeholder="ZT01733" />
+			  						 </el-form-item>
+			           </el-col>
+			         </el-row>
+			     </el-col>
+			     <el-col :span="3">
+			       <el-form-item label="工价系数" prop="name">
+			         <el-input v-model="formData.sczl_工价系数" :clearable="true" placeholder="A班" />
+			       </el-form-item>
+			     </el-col>
+				  <el-col :span="3">
+					<el-form-item label="计产系数" prop="name">
+					  <el-input v-model="formData.sczl_计产系数" :clearable="true" placeholder="A班" />
+					</el-form-item>
+				  </el-col>
+			   </el-row>
             
               <el-row :gutter="10">
 				  <el-col :span="2">
@@ -309,109 +334,112 @@
 				   <span>班组成员</span>
 				 </el-col>
                 <el-col :span="2">
-                  <el-input v-model="formData.image" :clearable="true" placeholder="ZI00401" />
+                  <el-input v-model="formData.sczl_bh1" :clearable="true" placeholder="ZI00401" />
                 </el-col>
                 <el-col :span="2">
-                  <el-input v-model="formData.image" :clearable="true" placeholder="瞿春生" />
+                  <el-input v-model="formData.sczl_bh2" :clearable="true" placeholder="瞿春生" />
                 </el-col>
                 <el-col :span="2">
-                  <el-input v-model="formData.image" :clearable="true" placeholder="11.0" />
+                  <el-input v-model="formData.sczl_bh3" :clearable="true" placeholder="11.0" />
                 </el-col>
                 <el-col :span="2">
-                  <el-input v-model="formData.image" :clearable="true" placeholder="打包废纸" />
+                  <el-input v-model="formData.sczl_bh4" :clearable="true" placeholder="打包废纸" />
                 </el-col>
                 <el-col :span="2">
-                  <el-input v-model="formData.image" :clearable="true" placeholder="是" />
+                  <el-input v-model="formData.sczl_bh5" :clearable="true" placeholder="是" />
                 </el-col>
 				<el-col :span="2">
-				  <el-input v-model="formData.image" :clearable="true" placeholder="ZI00401" />
+				  <el-input v-model="formData.sczl_bh6" :clearable="true" placeholder="ZI00401" />
 				</el-col>
 				<el-col :span="2">
-				  <el-input v-model="formData.image" :clearable="true" placeholder="瞿春生" />
+				  <el-input v-model="formData.sczl_bh7" :clearable="true" placeholder="瞿春生" />
 				</el-col>
 				<el-col :span="2">
-				  <el-input v-model="formData.image" :clearable="true" placeholder="11.0" />
+				  <el-input v-model="formData.sczl_bh8" :clearable="true" placeholder="11.0" />
 				</el-col>
 				<el-col :span="2">
-				  <el-input v-model="formData.image" :clearable="true" placeholder="打包废纸" />
+				  <el-input v-model="formData.sczl_bh9" :clearable="true" placeholder="打包废纸" />
 				</el-col>
 				<el-col :span="2">
-				  <el-input v-model="formData.image" :clearable="true" placeholder="是" />
+				  <el-input v-model="formData.sczl_bh10" :clearable="true" placeholder="是" />
 				</el-col>
               </el-row>
             </el-form>
 			
+			
+			<el-row :gutter="10" style="margin-top: 10px;">
+							 <el-col :span="2">
+							   
+							 </el-col>
+			   <el-col :span="2">
+			     <el-input v-model="formData.sczl_bh1_name" :clearable="true" placeholder="ZI00401" />
+			   </el-col>
+			   <el-col :span="2">
+			     <el-input v-model="formData.sczl_bh2_name" :clearable="true" placeholder="瞿春生" />
+			   </el-col>
+			   <el-col :span="2">
+			     <el-input v-model="formData.sczl_bh3_name" :clearable="true" placeholder="11.0" />
+			   </el-col>
+			   <el-col :span="2">
+			     <el-input v-model="formData.sczl_bh4_name" :clearable="true" placeholder="打包废纸" />
+			   </el-col>
+			   <el-col :span="2">
+			     <el-input v-model="formData.sczl_bh5_name" :clearable="true" placeholder="是" />
+			   </el-col>
+							<el-col :span="2">
+							  <el-input v-model="formData.sczl_bh6_name" :clearable="true" placeholder="ZI00401" />
+							</el-col>
+							<el-col :span="2">
+							  <el-input v-model="formData.sczl_bh7_name" :clearable="true" placeholder="瞿春生" />
+							</el-col>
+							<el-col :span="2">
+							  <el-input v-model="formData.sczl_bh8_name" :clearable="true" placeholder="11.0" />
+							</el-col>
+							<el-col :span="2">
+							  <el-input v-model="formData.sczl_bh9_name" :clearable="true" placeholder="打包废纸" />
+							</el-col>
+							<el-col :span="2">
+							  <el-input v-model="formData.sczl_bh10_name" :clearable="true" placeholder="是" />
+							</el-col>
+			 </el-row>
+			
 			<el-row :gutter="10" style="margin-top: 10px;">
 				 <el-col :span="2">
 				  
 				 </el-col>
 			   <el-col :span="2">
-			     <el-input v-model="formData.image" :clearable="true" placeholder="ZI00401" />
+			     <el-input v-model="formData.sczl_rate1" :clearable="true" placeholder="ZI00401" />
 			   </el-col>
 			   <el-col :span="2">
-			     <el-input v-model="formData.image" :clearable="true" placeholder="瞿春生" />
+			     <el-input v-model="formData.sczl_rate2" :clearable="true" placeholder="瞿春生" />
 			   </el-col>
 			   <el-col :span="2">
-			     <el-input v-model="formData.image" :clearable="true" placeholder="11.0" />
+			     <el-input v-model="formData.sczl_rate3" :clearable="true" placeholder="11.0" />
 			   </el-col>
 			   <el-col :span="2">
-			     <el-input v-model="formData.image" :clearable="true" placeholder="打包废纸" />
+			     <el-input v-model="formData.sczl_rate4" :clearable="true" placeholder="打包废纸" />
 			   </el-col>
 			   <el-col :span="2">
-			     <el-input v-model="formData.image" :clearable="true" placeholder="是" />
+			     <el-input v-model="formData.sczl_rate5" :clearable="true" placeholder="是" />
 			   </el-col>
 				<el-col :span="2">
-				  <el-input v-model="formData.image" :clearable="true" placeholder="ZI00401" />
+				  <el-input v-model="formData.sczl_rate6" :clearable="true" placeholder="ZI00401" />
 				</el-col>
 				<el-col :span="2">
-				  <el-input v-model="formData.image" :clearable="true" placeholder="瞿春生" />
+				  <el-input v-model="formData.sczl_rate7" :clearable="true" placeholder="瞿春生" />
 				</el-col>
 				<el-col :span="2">
-				  <el-input v-model="formData.image" :clearable="true" placeholder="11.0" />
+				  <el-input v-model="formData.sczl_rate8" :clearable="true" placeholder="11.0" />
 				</el-col>
 				<el-col :span="2">
-				  <el-input v-model="formData.image" :clearable="true" placeholder="打包废纸" />
+				  <el-input v-model="formData.sczl_rate9" :clearable="true" placeholder="打包废纸" />
 				</el-col>
 				<el-col :span="2">
-				  <el-input v-model="formData.image" :clearable="true" placeholder="是" />
+				  <el-input v-model="formData.sczl_rate10" :clearable="true" placeholder="是" />
 				</el-col>
 			 </el-row>
 			 
-			 <el-row :gutter="10" style="margin-top: 10px;">
-				 <el-col :span="2">
-				   
-				 </el-col>
-			    <el-col :span="2">
-			      <el-input v-model="formData.image" :clearable="true" placeholder="ZI00401" />
-			    </el-col>
-			    <el-col :span="2">
-			      <el-input v-model="formData.image" :clearable="true" placeholder="瞿春生" />
-			    </el-col>
-			    <el-col :span="2">
-			      <el-input v-model="formData.image" :clearable="true" placeholder="11.0" />
-			    </el-col>
-			    <el-col :span="2">
-			      <el-input v-model="formData.image" :clearable="true" placeholder="打包废纸" />
-			    </el-col>
-			    <el-col :span="2">
-			      <el-input v-model="formData.image" :clearable="true" placeholder="是" />
-			    </el-col>
-				<el-col :span="2">
-				  <el-input v-model="formData.image" :clearable="true" placeholder="ZI00401" />
-				</el-col>
-				<el-col :span="2">
-				  <el-input v-model="formData.image" :clearable="true" placeholder="瞿春生" />
-				</el-col>
-				<el-col :span="2">
-				  <el-input v-model="formData.image" :clearable="true" placeholder="11.0" />
-				</el-col>
-				<el-col :span="2">
-				  <el-input v-model="formData.image" :clearable="true" placeholder="打包废纸" />
-				</el-col>
-				<el-col :span="2">
-				  <el-input v-model="formData.image" :clearable="true" placeholder="是" />
-				</el-col>
-			  </el-row>
+			 
             
             <template #footer>
               <div class="dialog-footer">
@@ -431,7 +459,16 @@
 <script setup>
 import {
   getproductionCount,
-  getproductionList
+  getproductionList,
+  productionlocate,
+  productionByGdbh,
+  productionInfo,
+  productionGdmc,
+  productionYjmc,
+  productionGx,
+  productionDedh,
+  productionedit,
+  productiondel
 } from '@/api/jixiaoguanli/jitairibaobiao'
 
 // 全量引入格式化工具 请按需保留
@@ -476,18 +513,62 @@ getTabdata();
 
 // 自动化生成的字典(可能为空)以及字段
 const formData = ref({
-  id: '',
-  name: '',
-  date: '',
-  group: '',
-  packingOutput: '',
-  reworkOutput: '',
-  pieceOutput: '',
-  order: '',
-  user: '',
-  createTime: '',
-  updateTime: '',
-  uniqid: '',
+		  sczl_gdbh: '',
+          Gd_cpmc: '',
+          sczl_yjno: '',
+          yj_yjmc: '',
+          sczl_gxmc: '',
+          sczl_gxh: '',
+          sczl_type: '',
+          sczl_rq: '',
+          sczl_jtbh: '',
+          sczl_bzdh: '',
+          sczl_ms: '',
+          sczl_ls: '',
+          sczl_cl: '',
+          sczl_zcfp: '',
+          sczl_装版总工时: '',
+          sczl_装版工时: '',
+          sczl_保养工时: '',
+          sczl_异常停机工时: '',
+          sczl_打样总工时: '',
+          sczl_打样工时: '',
+          sczl_设备运行工时: '',
+          拆片联拼系数: '',
+          拆片条小盒系数: '',
+          sczl_dedh: '',
+          sczl_工价系数: '',
+          sczl_计产系数: '',
+          sczl_bh1: '',
+          sczl_bh2: '',
+          sczl_bh3: '',
+          sczl_bh4: '',
+          sczl_bh5: '',
+          sczl_bh6: '',
+          sczl_bh7: '',
+          sczl_bh8: '',
+          sczl_bh9: '',
+          sczl_bh10: '',
+          sczl_rate1: '',
+          sczl_rate2: '',
+          sczl_rate3: '',
+          sczl_rate4: '',
+          sczl_rate5: '',
+          sczl_rate6: '',
+          sczl_rate7: '',
+          sczl_rate8: '',
+          sczl_rate9: '',
+          sczl_rate10: '',
+          sczl_bh1_name: '',
+          sczl_bh2_name: '',
+          sczl_bh3_name: '',
+          sczl_bh4_name: '',
+          sczl_bh5_name: '',
+          sczl_bh6_name: '',
+          sczl_bh7_name: '',
+          sczl_bh8_name: '',
+          sczl_bh9_name: '',
+          sczl_bh10_name: '',
 })
 
 // 验证规则
@@ -499,155 +580,70 @@ const elSearchFormRef = ref()
 
 // =========== 表格控制部分 ===========
 const tableData = reactive([])
-const detailData = reactive([
-  {
-    gdbh: '2311736',
-    yjgx: '01-15',
-    gxmc: '包装(圆切)',
-    yjmc: '利群(新)小《降焦改版)',
-    bzcl: '13.00',
-    fgcl: '0.00',
-    mxsl: '2500',
-    jcxs: '1.000',
-    ly: '',
-    dedh: '030002002',
-  },
-  {
-    gdbh: '2311736',
-    yjgx: '01-15',
-    gxmc: '包装(圆切)',
-    yjmc: '利群(新)小《降焦改版)',
-    bzcl: '13.00',
-    fgcl: '0.00',
-    mxsl: '2500',
-    jcxs: '1.000',
-    ly: '',
-    dedh: '030002002',
-  },
-  {
-    gdbh: '2311736',
-    yjgx: '01-15',
-    gxmc: '包装(圆切)',
-    yjmc: '利群(新)小《降焦改版)',
-    bzcl: '13.00',
-    fgcl: '0.00',
-    mxsl: '2500',
-    jcxs: '1.000',
-    ly: '',
-    dedh: '030002002',
-  },
-  {
-    gdbh: '2311736',
-    yjgx: '01-15',
-    gxmc: '包装(圆切)',
-    yjmc: '利群(新)小《降焦改版)',
-    bzcl: '13.00',
-    fgcl: '0.00',
-    mxsl: '2500',
-    jcxs: '1.000',
-    ly: '',
-    dedh: '030002002',
-  },
-  {
-    gdbh: '2311736',
-    yjgx: '01-15',
-    gxmc: '包装(圆切)',
-    yjmc: '利群(新)小《降焦改版)',
-    bzcl: '13.00',
-    fgcl: '0.00',
-    mxsl: '2500',
-    jcxs: '1.000',
-    ly: '',
-    dedh: '030002002',
-  },
-  {
-    gdbh: '2311736',
-    yjgx: '01-15',
-    gxmc: '包装(圆切)',
-    yjmc: '利群(新)小《降焦改版)',
-    bzcl: '13.00',
-    fgcl: '0.00',
-    mxsl: '2500',
-    jcxs: '1.000',
-    ly: '',
-    dedh: '030002002',
-  },
-  {
-    gdbh: '2311736',
-    yjgx: '01-15',
-    gxmc: '包装(圆切)',
-    yjmc: '利群(新)小《降焦改版)',
-    bzcl: '13.00',
-    fgcl: '0.00',
-    mxsl: '2500',
-    jcxs: '1.000',
-    ly: '',
-    dedh: '030002002',
-  },
-  {
-    gdbh: '2311736',
-    yjgx: '01-15',
-    gxmc: '包装(圆切)',
-    yjmc: '利群(新)小《降焦改版)',
-    bzcl: '13.00',
-    fgcl: '0.00',
-    mxsl: '2500',
-    jcxs: '1.000',
-    ly: '',
-    dedh: '030002002',
-  },
-  {
-    gdbh: '2311736',
-    yjgx: '01-15',
-    gxmc: '包装(圆切)',
-    yjmc: '利群(新)小《降焦改版)',
-    bzcl: '13.00',
-    fgcl: '0.00',
-    mxsl: '2500',
-    jcxs: '1.000',
-    ly: '',
-    dedh: '030002002',
-  },
-  {
-    gdbh: '2311736',
-    yjgx: '01-15',
-    gxmc: '包装(圆切)',
-    yjmc: '利群(新)小《降焦改版)',
-    bzcl: '13.00',
-    fgcl: '0.00',
-    mxsl: '2500',
-    jcxs: '1.000',
-    ly: '',
-    dedh: '030002002',
-  },
-])
+const detailData = reactive([])
 const total = ref(0)
 const page = ref(1)
 const limit = ref(10)
 const searchInfo = ref('')
 const params = {
-  date: '',
-  sys_id: '',
-  page: page.value.toString(),
-  limit: limit.value.toString(),
+ type: '',
+ date: '',
+ sys_id: '',
+ gdbh: '',
 }
 
 // 分页设置
 const handleSizeChange = (val) => {
-  limit.value = val;
-  params.limit = val.toString();
-  getTableData();
+ switch (params.type) {
+   case 'getTableData':
+     getTableData()
+     break
+   case 'getLocateTable':
+     GetLocate()
+     break
+   default:
+     break
+ }
 }
 
 // 页面跳转
 const handleCurrentChange = (val) => {
-  page.value = val
-  params.page = val.toString();
-  getTableData()
+  switch (params.type) {
+    case 'getTableData':
+      getTableData()
+      break
+    case 'getLocateTable':
+      GetLocate()
+      break
+    default:
+      break
+  }
 }
-
+//定位
+const GetLocate = async () => {
+  const response = await productionlocate({
+    gdbh: params.gdbh,
+    page: page.value.toString(), limit: limit.value.toString(),
+  })
+  console.log(response)
+  if (response.code === 0) {
+	 
+    const processedData = response.data.rows.map(item => {
+      return {
+        ...item,
+        combinedProp: item.sczl_gdbh + '--'+item.yj_yjmc,
+        combinedProp2: item.sczl_yjgx + '-'+item.sczl_gxmc
+      };
+    });
+	  total.value = response.data.total
+    tableData.splice(0, tableData.length, ...processedData);
+  }
+}
+let positionvalue=ref()
+//获取列表
 const getTableData = async() => {
- const response = await getproductionList(params);
+ const response = await getproductionList({date: params.date, sys_id: params.sys_id,
+	  page: page.value.toString(), limit: limit.value.toString()});
    console.log(response)
    if (response.code === 0) {
      tableData.splice(0, tableData.length, ...response.data.rows);
@@ -660,6 +656,7 @@ const handleNodeClick = (node,check) => {
    params.date = node.params.date;
    params.sys_id = node.params.sys_id;
    total.value = node.params.total;
+   console.log(params)
    getTableData();
  }
 
@@ -667,7 +664,80 @@ const handleNodeClick = (node,check) => {
 
 // 搜索
 function onSearch() {
-return this.rows.filter(row => row.sczl_gdbh.includes(this.searchInfo));
+    params.gdbh = positionvalue.value
+	params.type = 'getLocateTable'
+	page.value = 1
+	GetLocate()
+}
+// 按工单显示
+function onCountByGdbh() {
+	CountByGdbh()
+}
+//按工单显示
+const CountByGdbh = async () => {
+  const response = await productionByGdbh();
+  // let tree = {}; // 将 tree 声明为 let 变量,以便后续可以重新赋值
+  // console.log(response)
+  if (response.code === 0) {
+	//   console.log(response)
+	  
+	// const transformedData = response.data.map(item => ({
+	// 	      label: `${item.sys.value}`,	
+			  
+	// 	      // children: item.sys(sysItem => ({
+	// 	        // label: `${sysItem.sys} 【记录数: ${sysItem.sys}张】`,
+	// 	        params: {
+	// 	          date: item.sczl_gdbh,
+	// 	          sys_id: item.sczl_gdbh,
+	// 	          total: '1',
+	// 	        },
+	// 	      // })),
+	// 	    }));
+	// 	    treeData.splice(0, treeData.length, ...transformedData);
+			// 假设您有一个名为"tree"的空对象来存储树形结构
+			
+		treeData.splice(0, treeData.length);
+		  // 遍历接口返回的数据
+		  response.data.forEach(item => {
+		    // 创建父节点
+		    treeData[item.sczl_gdbh] = {
+		      label: item.sczl_gdbh+'【'+item.yj_yjmc+'】',
+		      children: [],
+			  params:{
+				date: item.sczl_gdbh,
+				sys_id:'' ,
+				total: '',
+			  }
+		    };
+		
+		    // 添加子节点
+		    for (const key in item.sys) {
+		      const childNode = {
+		        name: key,
+		        label: key+'  【记录数'+item.sys[key]+'张】',
+				params:{
+					date: item.sczl_gdbh,
+					sys_id:key ,
+					total: item.sys[key],
+				}
+		      };
+		      treeData[item.sczl_gdbh].children.push(childNode);
+		    }
+		  });
+		// console.log(treeData)
+		// //   // 打印树形结构
+		//   console.log(JSON.stringify(tree, null, 2));
+		
+		//   // 将父子关系转换为数组
+		//   const transformedData = Object.values(tree);
+		//   console.log(transformedData);
+		//   treeData = transformedData;
+  }
+  // // 将父子关系转换为数组
+  // const transformedData = Object.values(tree);
+  // console.log(transformedData)
+  // treeData = transformedData;
+  getTableData()
 }
 // ============== 表格控制部分结束 ===============
 
@@ -773,13 +843,24 @@ const enterDialog = async () => {
     }
   })
 }
-
+let table=ref(5);
+let lastCellValue=ref()
 // 双击表格操作
 function doubleClick(row, column, event) {
-  console.log(row, column, event);
-  // updateCompanyFunc(row);
   type.value = 'update';
-  dialogFormVisible.value = true
+    lastCellValue= row['UniqId'];
+   console.log(lastCellValue)
+  table.value=lastCellValue
+   dialogFormVisible.value = true
+   GetInfo(table.value)
+}
+//获取详细信息
+const GetInfo = async (value) => {
+  const response = await productionInfo({UniqId:value});
+  console.log(response) 
+  if (response.code === 0) {
+	formData.value=response.data;
+  }
 }
 
 // 导出excel

File diff suppressed because it is too large
+ 620 - 446
src/view/performance/MachineDocuments.vue


File diff suppressed because it is too large
+ 603 - 280
src/view/performance/Manualdocuments.vue


+ 3 - 10
src/view/performance/Packagingoutput.vue

@@ -597,7 +597,7 @@ const handleCurrentChange = (val) => {
 const getTableData = async () => {
 		
   const response = await getList(params);
-  console.log(response)
+  console.log(response.data.rows)
   if (response.code === 0) {
     tableData.splice(0, tableData.length, ...response.data.rows);
   }
@@ -698,13 +698,7 @@ const updateDetailData = async() => {
   console.log(restoredData)
   console.log(res)
 }
-const GxMcedit = async () => {
-  console.log(formData2)
-  const response = await edit(formData2);
-  if (response.code === 0) {
-	console.log(333)
-  }
-}
+
 
 const GxMcdel = async () => {
   const response = await del({UniqId:lastCellValue});
@@ -938,8 +932,7 @@ function doubleClick(row) {
   
      // console.log(row, column, event);
        // updateCompanyFunc(row);
-       type.value = 'update';
-       
+       type.value = 'update';     
 	   lastCellValue= row['UniqId'];
 		 console.log(lastCellValue)
 		 table.value=lastCellValue

+ 209 - 138
src/view/performance/yuangongrigongzi.vue

@@ -20,31 +20,72 @@
               </el-row>
               <el-button type="primary" :icon="Search" @click="onSearch">搜索</el-button>
               <el-button type="primary" :icon="Refresh">重置</el-button>
-			  <el-button type="primary" :icon="Search">定位</el-button>
+			  <el-button type="primary" :icon="Search" @click="onposition">定位</el-button>
 			  <el-button type="primary" :icon="Search">查改</el-button>
               <div style="margin-left: auto;">
                 <el-button type="primary" :icon="Download" @click="exportExcel">导出到Excel</el-button>
               </div>
             </div>
             <!-- 数据展示 -->
-            <el-table ref="multipleTable" style="width: 100%" tooltip-effect="dark" :data="tableData" row-key="ID"
-              highlight-current-row="true" border @selection-change="handleSelectionChange" :show-overflow-tooltip="true" @row-dblclick="doubleClick">
+            <el-table ref="multipleTable" style="width: 100%;height: 40vh;" tooltip-effect="dark" :data="tableData" row-key="ID" 
+              highlight-current-row="true" border @selection-change="handleSelectionChange" :show-overflow-tooltip="true"
+			   :row-style="{ height: '20px' }" 
+			   :cell-style="{ padding: '0px' }" :header-row-style="{ height: '20px' }"
+			   :header-cell-style="{ padding: '0px' }" @row-click="ontable" @row-dblclick="doubleClick">
               <el-table-column type="selection" width="55" />
-			  <el-table-column align="left" label="创建用户" prop="sys_id" width="120"/>
+			  <el-table-column align="left" label="员工编号" prop="bh" width="120"/>
+              <el-table-column align="left" label="员工姓名" prop="员工姓名" width="120"/>
               <el-table-column align="left" label="日期" prop="sczl_rq" width="120"/>
-              <el-table-column align="left" label="包装产量" prop="sczl_cl" width="120"/>
-              <el-table-column align="left" label="包装数量" prop="sczl_PgCl" width="120"/>
-              <el-table-column align="left" label="创建时间" prop="sys_rq" width="160"/>
-              <el-table-column align="left" label="修改时间" prop="mod_rq" width="160"/>
-              <el-table-column align="left" label="UNIQID" prop="UniqId" width="120"/>
+              <el-table-column align="left" label="计件工资" prop="计件工资" width="120"/>
+              <el-table-column align="left" label="加班工资" prop="加班工资" width="160"/>
+			  <el-table-column align="left" label="计时时数" prop="计时" width="160"/>
+              <el-table-column align="left" label="计时工资" prop="计时工资" width="160"/>
+              <el-table-column align="left" label="日工资合计" prop="日工资合计" width="120"/>
             </el-table>
             <!-- 分页 -->
-            <div class="gva-pagination">
+            <!-- <div class="gva-pagination">
               <el-pagination layout="total, sizes, prev, pager, next, jumper" :current-page="page" :page-size="limit"
                 :page-sizes="[10, 30, 50, 100]" :total="total" @current-change="handleCurrentChange"
                 @size-change="handleSizeChange" />
-            </div>
+            </div> -->
           </div>
+		  
+		  
+		  <div class="gva-table-box">
+		    <!-- 数据展示 -->
+		    <el-table ref="multipleTable" style="width: 100%" tooltip-effect="dark" :data="tableData2" row-key="ID"
+		      highlight-current-row="true" border @selection-change="handleSelectionChange" :show-overflow-tooltip="true" @row-dblclick="doubleClick">
+		      <el-table-column type="selection" width="55" />
+		  	  <el-table-column align="left" label="日期" prop="sczl_rq" width="120"/>
+		      <el-table-column align="left" label="工单编号" prop="sczl_gdbh" width="120"/>
+		      <el-table-column align="left" label="产品名称" prop="Gd_cpmc" width="120"/>
+		      <el-table-column align="left" label="印件及工序" prop="sczl_type" width="120"/>
+		      <el-table-column align="left" label="机台编号" prop="sczl_jtbh" width="160"/>
+		      <el-table-column align="left" label="班组车头产量" prop="班组车头产量" width="160"/>
+		      <el-table-column align="left" label="班组换算产量" prop="班组换算产量" width="120"/>
+			  <el-table-column align="left" label="工序难度系数" prop="工序难度系数" width="120"/>
+			  <el-table-column align="left" label="个人计件工资" prop="个人计件工资" width="120"/>
+			  <el-table-column align="left" label="个人加班工资" prop="个人加班工资" width="120"/>
+			  <el-table-column align="left" label="装版工时" prop="装版工时" width="120"/>
+			  <el-table-column align="left" label="保养工时" prop="保养工时" width="160"/>
+			  <el-table-column align="left" label="打样工时" prop="打样工时" width="160"/>
+			  <el-table-column align="left" label="异常停机工时" prop="异常停机工时" width="120"/>
+			  <el-table-column align="left" label="车头产量占用机时" prop="车头产量占用机时" width="120"/>
+			  <el-table-column align="left" label="日定额" prop="日定额" width="120"/>
+			  <el-table-column align="left" label="达标定额" prop="达标定额" width="120"/>
+			  <el-table-column align="left" label="千件工价" prop="千件工价" width="120"/>
+			  <el-table-column align="left" label="补产标准" prop="补产标准" width="160"/>
+			  <el-table-column align="left" label="员工编号" prop="bh" width="160"/>
+			  <el-table-column align="left" label="姓名" prop="xm" width="120"/>
+			  <el-table-column align="left" label="比例" prop="Rate" width="120"/>
+		    </el-table>
+		    <!-- 分页 -->
+		    <!-- <div class="gva-pagination">
+		      <el-pagination layout="total, sizes, prev, pager, next, jumper" :current-page="page" :page-size="limit"
+		        :page-sizes="[10, 30, 50, 100]" :total="total" @current-change="handleCurrentChange"
+		        @size-change="handleSizeChange" />
+		    </div> -->
+		  </div>
           <!-- 弹出框 -->
           <el-dialog v-model="dialogFormVisible" :before-close="closeDialog" :title="type === 'create' ? '添加' : '修改'"
             destroy-on-close width="1200px">
@@ -249,6 +290,20 @@
             </template>
           </el-dialog>
 
+
+          <el-dialog v-model="positioningVisibleshow" :before-close="closepositioningVisible" :title="type==='create'?'添加':'修改'" destroy-on-close>
+            <el-card>
+          				<el-form-item label="员工编号" prop="name">
+          				  <el-row :gutter="20">
+          				    <el-col :span="12">
+          				      <el-input v-model="positionvalue" :clearable="true" placeholder="ZT01733" />
+          				    </el-col>                      
+          				  </el-row>
+          				</el-form-item>
+          			</el-card>
+          			<el-button type="primary" @click="enterpositioning">确 定</el-button>
+          </el-dialog>
+         
         </el-main>
       </el-container>
     </el-container>
@@ -259,7 +314,12 @@
 <script setup>
 import {
   getList,
-  getTab
+  getTab,
+  dailygetTab,
+  dailygetList,
+  dailygetAllList,
+  dailygetDetail,
+  dailysearch
 } from '@/api/jixiaoguanli/jitairibaobiao'
 
 // 全量引入格式化工具 请按需保留
@@ -326,128 +386,8 @@ const elSearchFormRef = ref()
 
 // =========== 表格控制部分 ===========
 const tableData = reactive([])
-const detailData = reactive([
-  {
-    gdbh: '2311736',
-    yjgx: '01-15',
-    gxmc: '包装(圆切)',
-    yjmc: '利群(新)小《降焦改版)',
-    bzcl: '13.00',
-    fgcl: '0.00',
-    mxsl: '2500',
-    jcxs: '1.000',
-    ly: '',
-    dedh: '030002002',
-  },
-  {
-    gdbh: '2311736',
-    yjgx: '01-15',
-    gxmc: '包装(圆切)',
-    yjmc: '利群(新)小《降焦改版)',
-    bzcl: '13.00',
-    fgcl: '0.00',
-    mxsl: '2500',
-    jcxs: '1.000',
-    ly: '',
-    dedh: '030002002',
-  },
-  {
-    gdbh: '2311736',
-    yjgx: '01-15',
-    gxmc: '包装(圆切)',
-    yjmc: '利群(新)小《降焦改版)',
-    bzcl: '13.00',
-    fgcl: '0.00',
-    mxsl: '2500',
-    jcxs: '1.000',
-    ly: '',
-    dedh: '030002002',
-  },
-  {
-    gdbh: '2311736',
-    yjgx: '01-15',
-    gxmc: '包装(圆切)',
-    yjmc: '利群(新)小《降焦改版)',
-    bzcl: '13.00',
-    fgcl: '0.00',
-    mxsl: '2500',
-    jcxs: '1.000',
-    ly: '',
-    dedh: '030002002',
-  },
-  {
-    gdbh: '2311736',
-    yjgx: '01-15',
-    gxmc: '包装(圆切)',
-    yjmc: '利群(新)小《降焦改版)',
-    bzcl: '13.00',
-    fgcl: '0.00',
-    mxsl: '2500',
-    jcxs: '1.000',
-    ly: '',
-    dedh: '030002002',
-  },
-  {
-    gdbh: '2311736',
-    yjgx: '01-15',
-    gxmc: '包装(圆切)',
-    yjmc: '利群(新)小《降焦改版)',
-    bzcl: '13.00',
-    fgcl: '0.00',
-    mxsl: '2500',
-    jcxs: '1.000',
-    ly: '',
-    dedh: '030002002',
-  },
-  {
-    gdbh: '2311736',
-    yjgx: '01-15',
-    gxmc: '包装(圆切)',
-    yjmc: '利群(新)小《降焦改版)',
-    bzcl: '13.00',
-    fgcl: '0.00',
-    mxsl: '2500',
-    jcxs: '1.000',
-    ly: '',
-    dedh: '030002002',
-  },
-  {
-    gdbh: '2311736',
-    yjgx: '01-15',
-    gxmc: '包装(圆切)',
-    yjmc: '利群(新)小《降焦改版)',
-    bzcl: '13.00',
-    fgcl: '0.00',
-    mxsl: '2500',
-    jcxs: '1.000',
-    ly: '',
-    dedh: '030002002',
-  },
-  {
-    gdbh: '2311736',
-    yjgx: '01-15',
-    gxmc: '包装(圆切)',
-    yjmc: '利群(新)小《降焦改版)',
-    bzcl: '13.00',
-    fgcl: '0.00',
-    mxsl: '2500',
-    jcxs: '1.000',
-    ly: '',
-    dedh: '030002002',
-  },
-  {
-    gdbh: '2311736',
-    yjgx: '01-15',
-    gxmc: '包装(圆切)',
-    yjmc: '利群(新)小《降焦改版)',
-    bzcl: '13.00',
-    fgcl: '0.00',
-    mxsl: '2500',
-    jcxs: '1.000',
-    ly: '',
-    dedh: '030002002',
-  },
-])
+const tableData2 = reactive([])
+const detailData = reactive([])
 const total = ref(0)
 const page = ref(1)
 const limit = ref(10)
@@ -477,13 +417,78 @@ const handleCurrentChange = (val) => {
 const getTableData = async () => {
 	
 	
-  const response = await getList(params);
+  const response = await dailygetList({
+	  date: '202401', department: '胶印车间',});
   console.log(response)
   if (response.code === 0) {
-    tableData.splice(0, tableData.length, ...response.data.rows);
+	   const originalData = response.data;
+	      const summaryData = generateSummaryData(originalData);
+	      // 将合计数据插入到原始数据中
+	      const combinedData = [];
+	      originalData.forEach((item, index) => {
+	        combinedData.push(item);
+	        const nextItem = originalData[index + 1];
+	        if (nextItem && nextItem['员工姓名'] !== item['员工姓名']) {
+	          // 如果下一个员工姓名与当前不同,插入合计数据
+	          const currentSummary = summaryData.shift();
+	          combinedData.push(currentSummary);
+			  console.log(currentSummary)
+			 
+	        }
+	      });
+		  console.log(combinedData)
+	      // 更新表格数据
+	      tableData.splice(0, tableData.length, ...combinedData);
   }
 }
 
+const generateSummaryData = (data) => {
+  const summaryData = [];
+  let currentName = null;
+  let currentSummary = null;
+
+  data.forEach((item) => {
+    const name = item['员工姓名'].trim(); // 获取员工姓名并去除空格
+    if (name !== currentName) {
+      // 如果员工姓名发生改变,说明需要插入合计数据
+      if (currentSummary) {
+        // 将上一个员工的合计数据插入到数组中
+        summaryData.push(currentSummary);
+      }
+      // 创建新的合计数据
+      currentSummary = {
+        '员工姓名': name,
+        '日期': 0,
+        '计件工资': 0,
+        '加班工资': 0,
+        '日工资合计': 0
+      };
+      currentName = name;
+    }
+
+    // 更新合计数据
+	
+    currentSummary['日期']++;
+    currentSummary['计件工资'] += parseFloat(item['计件工资']);
+    currentSummary['加班工资'] += parseFloat(item['加班工资']);
+    currentSummary['日工资合计'] += parseFloat(item['日工资合计']);
+	currentSummary['员工姓名']='合计('+currentSummary['日期']+'天)';
+  });
+
+  // 将最后一个员工的合计数据插入到数组中
+  if (currentSummary) {
+    summaryData.push(currentSummary);
+  }
+
+  // 将日期填充到表格中
+  summaryData.forEach((summary) => {
+    summary['计件工资'] = summary['计件工资'].toFixed(2); // 保留两位小数
+	summary['加班工资'] = summary['加班工资'].toFixed(2);
+	summary['日工资合计'] = summary['日工资合计'].toFixed(2);
+  });
+
+  return summaryData;
+};
 const handleNodeClick = (node, check) => {
   //存放当前节点的nodeId
   if (node.params) {
@@ -494,6 +499,44 @@ const handleNodeClick = (node, check) => {
   }
 }
 
+// 定位
+function onposition() {
+  positioningVisibleshow.value=true
+}
+const enterpositioning = async () => {
+ console.log(params.date)
+ let parts = params.date.split('-')
+ 
+ // # 截取第一个"-"之前的内容并赋值给新变量1
+ let new_variable1 = parts[0]
+ console.log(new_variable1)
+ 
+ // # 截取第一个"-"之后到第二个"-"之前的内容并赋值给新变量2
+ let new_variable2 = parts[1]
+ console.log(new_variable1+new_variable2) 
+ Getlocate(new_variable1+new_variable2)
+ positioningVisibleshow.value=false
+}
+let positionvalue=ref()
+const Getlocate = async (value) => {
+  
+  // const response = await locate(locatevalue);
+  // console.log(locatevalue)
+  // console.log(response)
+  // if (response.code === 0) {
+  //   tableData.splice(0, tableData.length, ...response.data.rows);
+  // }
+  const response = await dailysearch({
+    date: value,
+    search:positionvalue.value
+  })
+  if (response.code === 0) {
+	console.log(params.data+positionvalue.value)
+    tableData.splice(0, tableData.length, ...response.data)
+  }
+  console.log(response)
+  console.log(params.data+positionvalue.value)
+}
 // 搜索
 function onSearch() {
 
@@ -560,7 +603,7 @@ const updateCompanyFunc = async (row) => {
 
 // 弹窗控制标记
 const dialogFormVisible = ref(false)
-
+const positioningVisibleshow = ref(false)
 // 打开弹窗
 const openDialog = () => {
   type.value = 'create'
@@ -602,7 +645,35 @@ const enterDialog = async () => {
     }
   })
 }
-
+// 单击表格操作
+function ontable(row, column, event) {
+  console.log(params.date)
+  let parts = params.date.split('-')
+  
+  // # 截取第一个"-"之前的内容并赋值给新变量1
+  let new_variable1 = parts[0]
+  console.log(new_variable1)
+  
+  // # 截取第一个"-"之后到第二个"-"之前的内容并赋值给新变量2
+  let new_variable2 = parts[1]
+  console.log(new_variable1+new_variable2) 
+  console.log(row.bh)
+  Getundertable(new_variable1+new_variable2,row.bh)
+}
+//获取下列表
+const Getundertable = async (date,bh) => {
+  const response = await dailygetAllList({date:date,code:bh});
+  if(response.code==0){
+	  console.log(response)
+	   tableData2.splice(0, tableData2.length, ...response.data);
+	// console.log(response.data.num)
+	// const rowIndex = tableData.findIndex(row => row.UniqId === lastCellValue);
+	// console.log(rowIndex)
+	// tableData[rowIndex].sczl_废品率系数 = response.data.num;
+  }
+  // console.log(response)
+  // const rowIndex = tableData.findIndex(row => row.UniqId === 123);
+}
 // 双击表格操作
 function doubleClick(row, column, event) {
   console.log(row, column, event);

File diff suppressed because it is too large
+ 549 - 188
src/view/yunyin/chanpinziliao/chanpinziliao.vue


+ 226 - 271
src/view/yunyin/renliziyuan/renyuanjibenziliao.vue

@@ -6,68 +6,37 @@
         <div class="JKWTree-tree" style="height: 746px">
           <h3>组织架构</h3>
           <el-tree :data="treeData"  :props="defaultProps" @node-click="handleNodeClick" @node-expand="handleNodeExpand">
-            <template #default="{node,data}">
-              {{data['名称']}}<{{data['num']}}人>
-            </template>
+            <template #default="{node,data}">{{data['名称']}}<{{data['num']}}人></template>
           </el-tree>
         </div>
       </el-aside>
 
-      <!-- 右侧内容区域 -->
+      <!-- 右侧区域 -->
       <el-container>
         <el-main>
-          <!-- 搜索框 -->
+<!--          按钮 搜索 部分-->
           <div class="gva-search-box">
-            <el-form ref="elSearchFormRef" :inline="true" :model="searchInfo" class="demo-form-inline" :rules="searchRule" @keyup.enter="onSubmit">
-              <!-- 左侧查询输入框 -->
+            <el-form ref="elSearchFormRef" :inline="true"  class="demo-form-inline" :rules="searchRule" @keyup.enter="onSubmit">
               <el-form-item>
-                <el-input v-model="searchInfo.ke" placeholder="搜索员工编号或员工姓名" clearable style="width: 200px;" @input="onSubmit"></el-input>
-              </el-form-item>
-              <!-- 右侧查询和重置按钮 -->
-              <el-form-item>
-                <el-button type="primary" icon="search" @click="onSubmit">查询</el-button>
-                <!--								<el-button icon="refresh" @click="onReset">重置</el-button>-->
-                <el-button type="primary" icon="plus" @click="openDialog">新增</el-button>
-                <el-button type="primary" icon="Download" @click="exportToExcel" style="float: right;">导出到Excel</el-button>
+                <el-input v-model="searchInfo" placeholder="搜索员工编号或员工姓名" clearable style="width: 200px;margin: 5px"></el-input>
+                <el-button type="primary" icon="search" @click="onSubmit" style="margin: 5px">查询</el-button>
+                <el-button disabled type="primary" icon="Download" @click="exportToExcel" style="margin: 5px;float: right;">导出到Excel</el-button>
                 <el-dialog v-model="dialogexportToExcel" disabled title="员工基本资料导出" width="50%">
-
                 </el-dialog>
               </el-form-item>
             </el-form>
           </div>
 
-          <!-- 表格及操作按钮 -->
           <div class="gva-table-box">
-
-            <!-- 导出字段选择对话框 -->
-            <el-dialog title="选择导出字段" :visible.sync="exportDialogVisible" width="30%">
-              <el-checkbox-group v-model="selectedExportFields">
-                <el-checkbox label="employeenumber">员工编号</el-checkbox>
-                <el-checkbox label="employeename">员工姓名</el-checkbox>
-                <el-checkbox label="gender">性别</el-checkbox>
-                <!-- 添加更多字段选项 -->
-              </el-checkbox-group>
-              <div slot="footer" class="dialog-footer">
-                <el-button @click="exportDialogVisible = false">取 消</el-button>
-                <el-button type="primary" @click="exportSelectedFields">确 定</el-button>
-              </div>
-            </el-dialog>
-
-            <!-- 表格 -->
-            <el-table ref="multipleTable"
-                      style="width: 100%;height: 580px"
-                      tooltip-effect="dark"
-                      :row-style="{ height: '20px' }"
+            <!-- 表格数据 -->
+            <el-table ref="multipleTable" style="width: 100%;height: 580px" tooltip-effect="dark"
+                      :row-style="{ height: '20px' }"  :header-cell-style="{ padding: '0px' }"
                       :cell-style="{ padding: '0px' }" :header-row-style="{ height: '20px' }"
-                      :header-cell-style="{ padding: '0px' }"
-                      :data="tableData"
-                      border
-                      row-key="ID"
-                      highlight-current-row="true"
-                      @row-dblclick="updateCompanyFunc"
-                      @row-click="tableRowClick"
+                      :data="tableData"  border row-key="ID"
+                      highlight-current-row="true" @row-dblclick="updateCompanyFunc"
+                      @row-click="tableRowClick" :show-overflow-tooltip="true"
                       @selection-change="handleSelectionChange">
-              <el-table-column type="selection" width="55" />
+<!--              <el-table-column type="selection" width="55" />-->
               <el-table-column align="left" label="员工编号" prop="员工编号"  width="100" />
               <el-table-column align="left" label="员工姓名" prop="员工姓名"  width="100"/>
               <el-table-column align="left" label="性别" prop="性别" />
@@ -89,125 +58,161 @@
               <el-table-column align="left" label="创建时间" prop="sys_rq" width="160" />
               <el-table-column align="left" label="修改时间" prop="mod_rq" width="160" />
             </el-table>
+
             <!-- 分页 -->
             <div class="gva-pagination">
-              <el-pagination layout="total, sizes, prev, pager, next, jumper" :current-page="page"
-                             :page-size="pageSize" :page-sizes="[10, 30, 50, 100]" :total="total"
-                             @current-change="handleCurrentChange" @size-change="handleSizeChange" />
+              <el-pagination layout="total, sizes, prev, pager, next, jumper" :current-page="page" :page-size="pageSize" :page-sizes="[10, 30, 50, 100]"
+               :total="total" @current-change="handleCurrentChange" @size-change="handleSizeChange" />
             </div>
           </div>
 
           <!-- 弹窗 -->
-          <el-dialog
-              v-model="dialogFormVisible"
-              :before-close="closeDialog"
-              :title="type==='create'?'添加员工基本资料':'修改员工基本资料'"
-              destroy-on-close
-          >
-            <el-row>
-              <!-- 左侧表单 -->
-              <el-col :span="8">
-                <el-scrollbar height="500px">
-                  <el-form :model="formDataTest" label-position="right" ref="elFormRef" :rules="rule" label-width="100px">
-                    <el-form-item label="员工编号:" prop="address">
-                      <el-input v-model="formDataTest['员工编号']" :clearable="true" placeholder="请输入员工编号" style="width: 180px;" />
-                    </el-form-item>
-                    <el-form-item label="性别:" prop="gender">
-                      <el-input v-model="formDataTest['性别']" :clearable="true" placeholder="请输入性别" style="width: 180px;" />
-                    </el-form-item>
-                    <el-form-item label="身份证号:" prop="idCard">
-                      <el-input v-model="formDataTest['身份证号']" :clearable="true" placeholder="请输入身份证" style="width: 180px;" />
-                    </el-form-item>
-                    <el-form-item label="部门名称:" prop="department">
-                      <el-input v-model="formDataTest['所在部门']" :clearable="true" placeholder="请输入部门名称" style="width: 180px;" />
-                    </el-form-item>
-                    <el-form-item label="入职日期:" prop="joinDate">
-                      <el-input v-model="formDataTest['聘用日期']" :clearable="true" placeholder="请输入入职日期" style="width: 180px;" />
-                    </el-form-item>
-                    <el-form-item label="人员类别:" prop="joinDate">
-                      <el-select v-model="formDataTest['人员类别']" placeholder="请选择人员类别" style="width: 180px;">
-                        <el-option label="生产" value="生产"></el-option>
-                        <el-option label="行政" value="行政"></el-option>
-                      </el-select>
-                    </el-form-item>
-                    <el-form-item label="班次类型:" prop="joinDate">
-                      <el-input v-model="formDataTest['班次类型']" :clearable="true" placeholder="请输入班次类型" style="width: 180px;" />
-                    </el-form-item>
-                    <el-form-item label="工资表类别:" prop="joinDate">
-                      <el-select v-model="formDataTest['工资表类别']" placeholder="请选择工资表类别" style="width: 180px;">
-                        <el-option label="职员级计时工资表" value="职员级计时工资表"></el-option>
-                        <el-option label="另发工资" value="另发工资"></el-option>
-                        <el-option label="操作级计件工资表" value="操作级计件工资表"></el-option>
-                        <el-option label="操作级计时工资表" value="操作级计时工资表"></el-option>
-                      </el-select>
-                    </el-form-item>
+          <el-dialog v-model="dialogFormVisible" :before-close="closeDialog" width="900px" style="height: 600px;" :title="'修改员工基本资料'" destroy-on-close>
+            <el-form :model="formDataTest" label-position="right" ref="elFormRef" :rules="rule" label-width="100px">
+              <div>
+                <div style="float: left; width: 34%;">
+                  <!-- 左侧部分 -->
+                  <el-form-item label="员工编号:" prop="employeeId">
+                    <el-input v-model="formDataTest['员工编号']"  placeholder="" style="width: 190px;" />
+                  </el-form-item>
+                  <el-form-item label="性别:" prop="gender">
+                    <el-input v-model="formDataTest['性别']"  placeholder="" style="width: 190px;" />
+                  </el-form-item>
+                  <el-form-item label="身份证号:" prop="gender">
+                    <el-input v-model="formDataTest['身份证号']"  placeholder="" style="width: 200px;" />
+                  </el-form-item>
+                  <el-form-item label="部门名称:" prop="gender">
+                    <el-input v-model="formDataTest['所在部门']"  placeholder="" style="width: 190px;" />
+                  </el-form-item>
+                  <el-form-item label="入职日期:" prop="joinDate">
+                    <el-input v-model="formDataTest['聘用日期']"  placeholder="" style="width: 190px;" />
+                  </el-form-item>
+                  <el-form-item label="人员类别:" prop="joinDate">
+                    <el-select v-model="formDataTest['人员类别']" placeholder="" style="width: 190px;">
+                      <el-option label="生产" value="生产"></el-option>
+                      <el-option label="行政" value="行政"></el-option>
+                    </el-select>
+                  </el-form-item>
+                  <el-form-item label="班次类型:" prop="joinDate">
+                    <el-input v-model="formDataTest['班次类型']"  placeholder="" style="width: 190px;" />
+                  </el-form-item>
+                  <el-form-item label="工资表类别:" prop="joinDate">
+                    <el-select v-model="formDataTest['工资表类别']" placeholder="" style="width: 190px;">
+                      <el-option label="职员级计时工资表" value="职员级计时工资表"></el-option>
+                      <el-option label="另发工资" value="另发工资"></el-option>
+                      <el-option label="操作级计件工资表" value="操作级计件工资表"></el-option>
+                      <el-option label="操作级计时工资表" value="操作级计时工资表"></el-option>
+                    </el-select>
+                  </el-form-item>
+                  <el-form-item label="U8在职:" prop="joinDate">
+                    <el-input v-model="formDataTest['U8在职']"   placeholder="" style="width: 190px;" />
+                  </el-form-item>
+                </div>
+                <div style="float: left; width: 33%;margin-left: 50px">
+                  <!-- 中间部分 -->
+                  <el-form-item label="员工姓名:" prop="name">
+                    <el-input v-model="formDataTest['员工姓名']"  placeholder="" style="width: 190px;" />
+                  </el-form-item>
+                  <el-form-item label="出生日期:" prop="birthDate">
+                    <el-input v-model="formDataTest['出生日期']"  placeholder="" style="width: 190px;" />
+                  </el-form-item>
+                  <el-form-item label="职务:" prop="position">
+                    <el-input v-model="formDataTest['职称职务']" placeholder="" style="width: 190px;" />
+                  </el-form-item>
+                  <el-form-item label="部门编号:" prop="position">
+                    <el-input v-model="formDataTest['部门编码']" placeholder="" style="width: 190px;" />
+                  </el-form-item>
+                  <el-form-item label="转正日期:" prop="departmentId">
+                    <el-input v-model="formDataTest['转正日期']" placeholder="" style="width: 190px;" />
+                  </el-form-item>
+                  <el-form-item label="扣减司龄:" prop="departmentId">
+                    <el-input v-model="formDataTest['扣减司龄']" placeholder="" style="width: 190px;" />
+                  </el-form-item>
+                  <el-form-item label="人员性质:" prop="departmentId">
+                    <el-select v-model="formDataTest['人员性质']" placeholder="" style="width: 190px;">
+                      <el-option label="退休返聘" value="退休返聘"></el-option>
+                      <el-option label="劳动合同工" value="劳动合同工"></el-option>
+                      <el-option label="借用" value="借用"></el-option>
+                      <el-option label="劳务派遣" value="劳务派遣"></el-option>
+                      <el-option label="实习生" value="实习生"></el-option>
+                    </el-select>
+                  </el-form-item>
+                  <el-form-item label="工资核算分组:" prop="joinDate">
+                    <el-input v-model="formDataTest['薪酬核算分组']"  placeholder="" style="width: 190px;" />
+                  </el-form-item>
+                  <el-form-item label="在职状态:" prop="joinDate">
+                    <el-input v-model="formDataTest['在职状态']" placeholder="" style="width: 190px;" />
+                  </el-form-item>
+                </div>
+
+<!--                <div style="float: left; text-align: center; margin-left: 50px;">-->
+<!--                  &lt;!&ndash; 右侧图片 &ndash;&gt;-->
+<!--                  <div style="height: 200px; width: 160px; background-color: #eee; position: relative;">-->
+<!--                    &lt;!&ndash; 上传按钮 &ndash;&gt;-->
+<!--                    <input type="file" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity: 0; cursor: pointer;"-->
+<!--                           @change="handleFileUpload">-->
+<!--                    &lt;!&ndash; 显示上传的图片 &ndash;&gt;-->
+<!--                    <img v-if="formDataTest.imageUrl" :src="formDataTest.imageUrl" alt="Uploaded Image" style="max-width: 100%; max-height: 100%;">-->
+<!--                  </div>-->
+<!--                </div>-->
 
-                  </el-form>
-                </el-scrollbar>
-              </el-col>
-              <!-- 中间表单 -->
-              <el-col :span="8">
-                <el-scrollbar height="500px">
-                  <el-form :model="formDataTest" label-position="right" ref="elFormRef" :rules="rule" label-width="100px">
-                    <el-form-item label="员工姓名:" prop="name">
-                      <el-input v-model="formDataTest['员工姓名']" :clearable="true" placeholder="请输入姓名" style="width: 180px;" />
-                    </el-form-item>
-                    <el-form-item label="出生日期:" prop="birthDate">
-                      <el-input v-model="formDataTest['出生日期']" :clearable="true" placeholder="" style="width: 180px;" />
-                    </el-form-item>
-                    <el-form-item label="职务:" prop="position">
-                      <el-input v-model="formDataTest['职称职务']" :clearable="true" placeholder="请输入职务" style="width: 180px;" />
-                    </el-form-item>
-                    <!--										<el-form-item label="部门编号:" prop="departmentId">-->
-                    <!--											<el-input v-model="formDataTest['部门编号']" :clearable="true" placeholder="请输入部门编号" style="width: 180px;" />-->
-                    <!--										</el-form-item>-->
-                    <el-form-item label="转正日期:" prop="departmentId">
-                      <el-input v-model="formDataTest['转正日期']" :clearable="true" placeholder="请输入转正日期" style="width: 180px;" />
-                    </el-form-item>
-                    <el-form-item label="扣减司龄:" prop="departmentId">
-                      <el-input v-model="formDataTest['扣减司龄']" :clearable="true" placeholder="" style="width: 180px;" />
-                    </el-form-item>
-                    <el-form-item label="人员性质:" prop="departmentId">
-                      <el-select v-model="formDataTest['人员性质']" placeholder="请选择人员性质" style="width: 180px;">
-                        <el-option label="退休返聘" value="退休返聘"></el-option>
-                        <el-option label="劳动合同工" value="劳动合同工"></el-option>
-                        <el-option label="借用" value="借用"></el-option>
-                        <el-option label="劳务派遣" value="劳务派遣"></el-option>
-                        <el-option label="实习生" value="实习生"></el-option>
-                      </el-select>
-                    </el-form-item>
-                    <el-form-item label="U8状态:" prop="joinDate">
-                      <el-input v-model="formDataTest['U8在职']" :clearable="true"  placeholder="" style="width: 180px;" />
-                    </el-form-item>
-                    <el-form-item label="在职状态:" prop="joinDate">
-                      <el-input v-model="formDataTest['在职状态']" :clearable="true" placeholder="" style="width: 180px;" />
-                    </el-form-item>
-                  </el-form>
-                </el-scrollbar>
-              </el-col>
-              <!-- 右侧图片 -->
-            </el-row>
-            <!-- 添加 编辑页面 取消 确定 -->
-            <template #footer>
-              <div class="dialog-footer">
-                <el-button @click="closeDialog">取 消</el-button>
-                <el-button type="primary" @click="enterDialog">确 定</el-button>
               </div>
-            </template>
+            </el-form>
+            <!-- 添加编辑页面取消确定按钮 -->
+<!--            <template #footer>-->
+              <div  style="text-align: right; position: absolute; bottom: 20px; right: 20px; width: 90%;">
+                <el-button @click="closeDialog">取消</el-button>
+                <el-button type="primary" disabled @click="enterDialog">确定</el-button>
+              </div>
+<!--            </template>-->
           </el-dialog>
 
+
         </el-main>
       </el-container>
     </el-container>
   </div>
 </template>
+
+<script>
+export default {
+  data() {
+    return {
+      dialogFormVisible: false,
+      formDataTest: {
+        imageUrl: '' // 添加一个字段来保存上传的图片路径
+      },
+      rule: {} // 初始化rule对象
+    };
+  },
+  methods: {
+    closeDialog() {
+      // 关闭对话框的逻辑
+      this.dialogFormVisible = false;
+    },
+    enterDialog() {
+      // 确定按钮的逻辑
+      // 在这里可以执行提交表单的逻辑
+    },
+    handleFileUpload(event) {
+      // 处理文件上传逻辑
+      const file = event.target.files[0];
+      console.log(file)
+      // 模拟上传并保存文件路径
+      // 在实际应用中,您需要将文件上传到服务器并保存路径
+      this.formDataTest.imageUrl = URL.createObjectURL(file);
+      // 手动触发Vue的更新
+      this.$forceUpdate();
+    }
+  }
+};
+</script>
+
 <script setup>
 // 全量引入格式化工具 请按需保留
-import {createCompany, deleteCompany, deleteCompanyByIds, updateCompany, findCompany, getCompanyList} from '@/api/company'
-import {getDictFunc, formatDate, formatBoolean, filterDict, ReturnArrImg, onDownloadFile} from '@/utils/format'
-import {ElMessage, ElMessageBox} from 'element-plus'
 import {ref, reactive} from 'vue'
 import {getCustom, getDepartment, getProductData, getStaffList, ygjbzledit} from '@/api/yunyin/yunying'
+import {ElMessage} from "element-plus";
 defineOptions({name: 'Company'})
 // =========== 导出Excel表格 ===========
 const exportToExcel = () => {
@@ -219,51 +224,55 @@ const dialogexportToExcel = ref(false)
 
 // =========== 获取左侧树侧形结构 ===========
 const treeData = ref({})
-// const defaultProps = {
-//   children: 'children',
-//   label: '名称' // 将label设置为中文名称对应的字段名
-// };
 const _department_code = ref(null)
 const getDepartmentdata = async () => {
   try {
-    const data  = await getDepartment() //接口调用函数
+    const data  = await getDepartment();
     treeData.value = data.data;
   } catch (error) {
     console.error(error)
   }
 }
 getDepartmentdata();
-const numTime = 0
 
 //点击左侧树形 获取右侧table列表
-const tableData = reactive([])
+const tableData = reactive([]);
 const handleNodeClick = async (node) => {
   _department_code.value = node['编号'];
-  console.log(node['编号'])
-  // _getStaffList()
+  searchInfo.value = '';
+  _getStaffList()
 };
-// 点击管理中心 显示全部数据
-// const handleNodeExpand = async (node) => {
-//   // console.log(node)
-//   _department_code.value = node['编号'];
-//   _getStaffList()
-// }
 
-//封装的方法
+//点击管理中心 显示部门的全部数据
+const handleNodeExpand = async (node) => {
+  _department_code.value = node['编号'];
+  searchInfo.value = '';
+  _getStaffList()
+}
+
+// 搜索
+const searchInfo = ref('')
+//点击【查询】按钮
+const onSubmit = () => {
+  _department_code.value = '';
+  _getStaffList();
+};
+
+//获取员工信息列表
 const _getStaffList = async ()=>{
   let params = {}
+  params.search = searchInfo.value;
   params.department_code = _department_code.value;
-  params.search = _searchValue.value;
   params.mes_online = 1;
   params.u8_online = 1;
-  params.limit = pageSize.value;
-  params.page = page.value;
+  params.limit = 100;
+  params.page = 1;
   // console.log(params)
-  try {
-    const WorkListdata = await getStaffList(params)
-    console.log(WorkListdata);
-    // tableData.splice(0,tableData.length,...WorkListdata.data.list);
-    // total.value = WorkListdata.data.total;
+    try {
+    const WorkListdata = await getStaffList(params);
+    // console.log(WorkListdata)
+    tableData.splice(0,tableData.length,...WorkListdata.data.list);
+    total.value = WorkListdata.data.total;
   } catch (error) {
     console.error(error);
   }
@@ -286,117 +295,63 @@ const handleSizeChange = (val) => {
   _getStaffList();
 };
 
-const _searchValue = ref(null)
-// 搜索
-const onSubmit = () => {
-  // const searchValue = searchInfo._rawValue.ke; // 获取搜索框输入的值
-  // _searchValue.value = searchInfo._rawValue.ke;
-  // console.log(_searchValue);
-  _getStaffList()
-};
-
-// 查询
-const getTableData = async () => {
-  // console.log(table)
-}
-getTableData()
-
-// 自动化生成的字典(可能为空)以及字段
-const formData = ref({
-  address: '',
-  image: '',
-  name: '',
-})
-let formDataTest = reactive({})
-
-// 验证规则
-const rule = reactive({})
-const searchRule = reactive({
-  createdAt: [{
-    validator: (rule, value, callback) => {
-      if (searchInfo.value.startCreatedAt && !searchInfo.value.endCreatedAt) {
-        callback(new Error('请填写结束日期'))
-      } else if (!searchInfo.value.startCreatedAt && searchInfo.value.endCreatedAt) {
-        callback(new Error('请填写开始日期'))
-      } else if (searchInfo.value.startCreatedAt && searchInfo.value.endCreatedAt && (
-          searchInfo.value.startCreatedAt.getTime() === searchInfo.value.endCreatedAt
-              .getTime() || searchInfo.value.startCreatedAt.getTime() > searchInfo.value
-              .endCreatedAt.getTime())) {
-        callback(new Error('开始日期应当早于结束日期'))
-      } else {
-        callback()
-      }
-    },
-    trigger: 'change'
-  }],
-})
-const elFormRef = ref()
-const elSearchFormRef = ref()
-const searchInfo = ref({})
-
-// 重置
-const onReset = () => {
-  searchInfo.value = {}
-  getTableData()
-}
-
-
-// 行为控制标记(弹窗内部需要增还是改)
-const type = ref('')
-
+// 弹窗控制标记
+const dialogFormVisible = ref(false)
 //修改
+let formDataTest = reactive({})
 const updateCompanyFunc = async (row) => {
-  const product_code = row.员工编号;
-  formDataTest = row;
-  // console.log(row);
-  // const response = await ygjbzledit({ product_code: product_code });
-  // console.log(response);
+  Object.assign(formDataTest,row);
+  // formDataTest['部门编号'] = _department_code.value;
+  // 判断是否为 undefined,建议使用 typeof
+  if (typeof formDataTest['扣减司龄'] === "undefined") {
+    formDataTest['扣减司龄'] = "0";
+  }
   dialogFormVisible.value = true;
 };
-// 弹窗控制标记
-const dialogFormVisible = ref(false)
 
-// 打开弹窗
-const openDialog = () => {
-  type.value = 'create'
-  dialogFormVisible.value = true
-}
+// 修改关闭弹窗
+const closeDialog = () => {dialogFormVisible.value = false}
 
-// 关闭弹窗
-const closeDialog = () => {
-  dialogFormVisible.value = false
-  formData.value = {
-    address: '',
-    image: '',
-    name: '',
-  }
-}
 // 弹窗确定
 const enterDialog = async () => {
-  elFormRef.value?.validate(async (valid) => {
-    if (!valid) return
-    let res
-    switch (type.value) {
-      case 'create':
-        res = await createCompany(formData.value)
-        break
-      case 'update':
-        res = await updateCompany(formData.value)
-        break
-      default:
-        res = await createCompany(formData.value)
-        break
-    }
-    if (res.code === 0) {
-      ElMessage({
-        type: 'success',
-        message: '创建/更改成功'
-      })
-      closeDialog()
-      getTableData()
-    }
-  })
+  _ygjbzledit();
 }
+//修改员工资料
+const _ygjbzledit = async ()=>{
+  const formattedData = {
+    '员工编号': formDataTest['员工编号'],
+    '员工姓名': formDataTest['员工姓名'],
+    '性别': formDataTest['性别'],
+    '出生日期': formDataTest['出生日期'],
+    '身份证': formDataTest['身份证号'],
+    '职称职务': formDataTest['职称职务'],
+    '所在部门': formDataTest['所在部门'],
+    '部门编号': formDataTest['部门编号'],
+    '入职日期': formDataTest['聘用日期'],
+    '转正日期': formDataTest['转正日期'],
+    '扣减司龄': formDataTest['扣减司龄'],
+    '人员类别': formDataTest['人员类别'],
+    '人员性质': formDataTest['人员性质'],
+    '班次类型': formDataTest['班次类型'],
+    '工资核算分组': formDataTest['薪酬核算分组'],
+    '工资表类别': formDataTest['工资表类别'],
+    'U8在职': formDataTest['U8在职'],
+    '在职状态': formDataTest['在职状态'],
+  };
+  console.log(formattedData);
+  try {
+    // const ygjbzleditdata = await ygjbzledit(formattedData);
+    // console.log(ygjbzleditdata);
+    // if (ygjbzleditdata.code === 0) {
+    //   ElMessage({type: 'success',message: '更新成功'})
+    // } else {
+    //   ElMessage({ type: 'error',message: '更新失败'})
+    // }
+  } catch (error) {
+    console.error(error);
+  }
+}
+
 </script>
 
 <style>

File diff suppressed because it is too large
+ 475 - 385
src/view/yunyin/shengchanguanli/gongdanziliao.vue


+ 622 - 179
src/view/yunyin/shengchanguanli/shebeiyunxing.vue

@@ -1,117 +1,560 @@
 <template>
   <div>
+    
     <el-container>
-      <el-aside width="340px">
+      <el-aside width="200px">
         <div class="JKWTree-tree">
-          <h3> 设备运行跟踪</h3>
-          <el-tree
-              :data="treeData"
-              :props="defaultProps"
-              @node-click="handleNodeClick"></el-tree>
+
+          <h3  > 组织列表</h3>
+          <el-tree :data="treeData" :props="defaultProps" @node-click="handleNodeClick"></el-tree>
         </div>
+
       </el-aside>
       <el-container>
-        <!--        <el-header>dd</el-header>-->
+<!--        <el-header>dd</el-header>-->
         <el-main>
 
-          <!-- 搜索框 -->
-<!--          <div class="gva-search-box">-->
-<!--            <el-form ref="elSearchFormRef" :inline="true" :model="searchInfo" class="demo-form-inline" :rules="searchRule" @keyup.enter="onSubmit">-->
+          <div class="gva-search-box">
+            <el-row :gutter="500">
+              <el-col :span="25">
+				  <el-row :gutter="20">
+				    <el-col :span="6">
+				      <el-form-item label="工单编号" prop="name">
+				        <el-row :gutter="20">
+				          <el-col :span="12">
+				            <el-input v-model="formData.code" :clearable="true" placeholder="ZT01733" />							
+				          </el-col>
+						  <el-col :span="12">
+						    <el-input v-model="formData.code" :clearable="true" placeholder="ZT01733" />
+						  </el-col>
+				        </el-row>
+						
+				      </el-form-item>
+				    </el-col>
+				  </el-row>
+				  
+				  <el-row :gutter="20">
+				    <el-col :span="4">
+					 <el-form-item label="印件编号" prop="id">
+					   <el-input v-model="formData.sczl_cl" :clearable="true" placeholder="2023.12.14" />
+					 </el-form-item>
+				    </el-col>
+				  <el-col :span="3">
+					 <el-form-item label="工序名称" prop="name">
+					   <el-input v-model="formData.sczl_PgCl" :clearable="true" placeholder="A班" />
+					 </el-form-item>
+				    </el-col>			    
+				  </el-row>
+				  
+				  <el-row :gutter="20">
+				    <el-col :span="4">
+					 <el-form-item label="班组成员" prop="id">				  					   
+					 </el-form-item>
+				    </el-col>				  			    
+				  </el-row>
+				  
+				  <el-row :gutter="1">
+				  			     <el-col :span="1">
+				  			         <el-input v-model="formData.address" :clearable="true" placeholder="2023.12.14" />
+				  			     </el-col>
+				  							 <el-col :span="1">
+				  							   <el-input v-model="formData.流程单号1" :clearable="true" placeholder="ZT01733" />
+				  							 </el-col>
+				  				            <el-col :span="1">
+				  				              <el-input v-model="formData.流程单号2" :clearable="true" placeholder="ZT01733" />
+				  				            </el-col>
+				  			  				  <el-col :span="1">			  			
+				  			  				    <el-input v-model="formData.流程单号3" :clearable="true" placeholder="ZT01733" />
+				  			  				  </el-col>
+				  							  
+				  			  				  <el-col :span="1">
+				  			  				    <el-input v-model="formData.流程单号4" :clearable="true" placeholder="ZT01733" />
+				  			  				  </el-col>
+				  			  				  <el-col :span="1">
+				  			  				    <el-input v-model="formData.流程单号5" :clearable="true" placeholder="ZT01733" />
+				  			  				  </el-col>
+				  			  				  <el-col :span="1">
+				  			  				    <el-input v-model="formData.流程单号6" :clearable="true" placeholder="ZT01733" />
+				  			  				  </el-col>
+				  			  				  <el-col :span="1">
+				  			  				    <el-input v-model="formData.流程单号7" :clearable="true" placeholder="ZT01733" />
+				  			  				  </el-col>
+				  			  				  <el-col :span="1">
+				  			  				    <el-input v-model="formData.流程单号8" :clearable="true" placeholder="ZT01733" />
+				  			  				  </el-col>
+				  							  <el-col :span="1">
+				  			  				    <el-input v-model="formData.流程单号9" :clearable="true" placeholder="ZT01733" />
+				  			  				  </el-col>				  			     
+				  			   </el-row>
+							   
+							   <el-row :gutter="1">
+							   			     <el-col :span="1">
+							   			         <el-input v-model="formData.address" :clearable="true" placeholder="2023.12.14" />
+							   			     </el-col>
+							   							 <el-col :span="1">
+							   							   <el-input v-model="formData.流程单号1" :clearable="true" placeholder="ZT01733" />
+							   							 </el-col>
+							   				            <el-col :span="1">
+							   				              <el-input v-model="formData.流程单号2" :clearable="true" placeholder="ZT01733" />
+							   				            </el-col>
+							   			  				  <el-col :span="1">			  			
+							   			  				    <el-input v-model="formData.流程单号3" :clearable="true" placeholder="ZT01733" />
+							   			  				  </el-col>
+							   							  
+							   			  				  <el-col :span="1">
+							   			  				    <el-input v-model="formData.流程单号4" :clearable="true" placeholder="ZT01733" />
+							   			  				  </el-col>
+							   			  				  <el-col :span="1">
+							   			  				    <el-input v-model="formData.流程单号5" :clearable="true" placeholder="ZT01733" />
+							   			  				  </el-col>
+							   			  				  <el-col :span="1">
+							   			  				    <el-input v-model="formData.流程单号6" :clearable="true" placeholder="ZT01733" />
+							   			  				  </el-col>
+							   			  				  <el-col :span="1">
+							   			  				    <el-input v-model="formData.流程单号7" :clearable="true" placeholder="ZT01733" />
+							   			  				  </el-col>
+							   			  				  <el-col :span="1">
+							   			  				    <el-input v-model="formData.流程单号8" :clearable="true" placeholder="ZT01733" />
+							   			  				  </el-col>
+							   							  <el-col :span="1">
+							   			  				    <el-input v-model="formData.流程单号9" :clearable="true" placeholder="ZT01733" />
+							   			  				  </el-col>				  			     
+							   			   </el-row>
+				  
+			  </el-col>
+              <el-col >
+
+			  </el-col>
+            </el-row>
+          </div>
+          <div class="gva-table-box">
+            <div class="gva-btn-list">
+              <el-button type="primary" icon="plus" @click="openDialog">新增</el-button>
+              <el-popover v-model:visible="deleteVisible" :disabled="!multipleSelection.length" placement="top" width="160">
+                <p>确定要删除吗?</p>
+                <div style="text-align: right; margin-top: 8px;">
+                  <el-button type="primary" link @click="deleteVisible = false">取消</el-button>
+                  <el-button type="primary" @click="onDelete">确定</el-button>
+                </div>
+                <template #reference>
+                  <el-button icon="delete" style="margin-left: 10px;" :disabled="!multipleSelection.length" @click="deleteVisible = true">删除</el-button>
+                </template>
+              </el-popover>
+            </div>
+            <el-tabs v-model="activeName" type="card" @tab-click="handleClick">
+            
+                        <el-tab-pane label="设备作业清单"  @click="showTable('印件资料')"  name="first">
+                          <el-table ref="multipleTable"
+                                    :show-overflow-tooltip="true"
+                                    highlight-current-row="true"
+                                    :row-style="{ height: '20px' }"
+                                    :cell-style="{ padding: '0px' }" :header-row-style="{ height: '20px' }"
+                                    :header-cell-style="{ padding: '0px' }"
+                                    @row-dblclick="yjupdateCompanyFunc"
+                                    style="width: 100%;height: 330px" border tooltip-effect="dark" :data="yjtableData" row-key="ID" @selection-change="handleSelectionChange">
+            <!--                <el-table-column type="selection" width="55" />-->
+                            <el-table-column align="left" label="选择" prop="yj_yjno"  width="80"/>
+                            <el-table-column align="left" label="工单编号|质量信息" prop="yj_yjdh" width="180" />
+							<el-table-column align="left" label="印件资料" prop="yj_yjdh" width="240" />
+                            <el-table-column align="left" label="工序名称" prop="yj_yjmc" width="100" />
+                            <el-table-column align="left" label="计划产量/已完成" prop="yj_zzdh" width="180"/>
+                            <el-table-column align="left" label="装版时数" prop="yj_zzmc" width="100"/>
+                            <el-table-column align="left" label="工序产能" prop="yj_tlgg" width="100"/>
+                            <el-table-column align="left" label="计划工时" prop="yj_klgg" width="100"/>
+                            <el-table-column align="left" label="计划生产时段" prop="yj_ks" width="240" />
+                            <el-table-column align="left" label="排产备注" prop="yj_ls" width="100" />
+                            <el-table-column align="left" label="产品名称" prop="yj_desc" width="240" />
+                          </el-table>
+                        </el-tab-pane>
+            
+                        <el-tab-pane label="班组人员及分配比例" @click="showTable('工艺资料')" name="second">
+                          <el-table ref="multipleTable"
+                                    highlight-current-row="true"
+                                    :show-overflow-tooltip="true"
+                                    :row-style="{ height: '20px' }"
+                                    :cell-style="{ padding: '0px' }" :header-row-style="{ height: '20px' }"
+                                    :header-cell-style="{ padding: '0px' }"
+                                    @row-dblclick="gyupdateCompanyFunc"
+                                    :row-class-name="rowClassStyle"
+                                    style="width: 100%;height: 400px" border tooltip-effect="dark" :data="gytableData" row-key="ID" @selection-change="handleSelectionChange"
+                                    @row-click="clickybupdate">
+            <!--                <el-table-column type="selection" width="55" />-->
+                            <el-table-column align="left" label="选择" prop="方案"  width="70"/>
+                            <el-table-column align="left" label="班组号" prop="Gy0_yjno" width="80" />
+                            <el-table-column align="left" label="组员1" prop="Gy0_gxh" width="240" />
+                            <el-table-column align="left" label="组员2" prop="gy0_gxmc" width="240" />
+                            <el-table-column align="left" label="组员3" prop="add_gxmc" width="240" />
+                            <el-table-column align="left" label="组员4" prop="Gy0_Ks" width="240" />
+                            <el-table-column align="left" label="组员5" prop="Gy0_ls" width="100" />
+                            <el-table-column align="left" label="组员6" prop="备注" width="100" />
+                            <el-table-column align="left" label="组员7" prop="工价系数" width="100" />
+                            <el-table-column align="left" label="组员8" prop="损耗系数" width="100" />
+                            <el-table-column align="left" label="组员9" prop="Gy0_Ms" width="100" />
+                            <el-table-column align="left" label="组员10" prop="人工检_正品版" width="120" />
+                          </el-table>
+                        </el-tab-pane>
+            
+                        <el-tab-pane label="当班产量明细" @click="showTable('印版资料')" name="third">
+                        <el-table ref="multipleTable"
+                                  highlight-current-row="true"
+                                  :show-overflow-tooltip="true"
+                                  :row-style="{ height: '20px' }"
+                                  :cell-style="{ padding: '0px' }" :header-row-style="{ height: '20px' }"
+                                  :header-cell-style="{ padding: '0px' }"
+                                  @row-dblclick="ybupdateCompanyFunc"
+                                  style="width: 100%;height: 400px" border tooltip-effect="dark" :data="ybtableData" row-key="ID" @selection-change="handleSelectionChange"
+                                  >
+            <!--              <el-table-column type="selection" width="55" />-->
+                          <el-table-column align="left" label="生产时段" prop="YB_方案"  width="180"/>
+                          <el-table-column align="left" label="工单编号" prop="YB_Yjno" width="120" />
+                          <el-table-column align="left" label="产品名称" prop="印版类别" width="240" />
+                          <el-table-column align="left" label="印件及工序" prop="存货编码" width="320"/>
+                          <el-table-column align="left" label="标牌号" prop="印版名称"  width="80"/>
+                          <el-table-column align="left" label="产量" prop="考核印数" width="100"/>
+                          <el-table-column align="left" label="制程废品" prop="Sys_id" width="100" />
+                          <el-table-column align="left" label="制程次品" prop="建档日期" width="100" />
+                          <el-table-column align="left" label="前工序废" prop="更新日期" width="100" />
+						  <el-table-column align="left" label="来料异常" prop="YB_方案"  width="100"/>
+						  <el-table-column align="left" label="装版工时" prop="YB_Yjno" width="100" />
+						  <el-table-column align="left" label="保养工时" prop="印版类别" width="100" />
+						  <el-table-column align="left" label="打样工时" prop="存货编码" width="100"/>
+						  <el-table-column align="left" label="异常停机工时" prop="印版名称"  width="120"/>
+						  <el-table-column align="left" label="通电工时" prop="考核印数" width="100"/>
+						  <el-table-column align="left" label="码开始行" prop="Sys_id" width="100" />
+						  <el-table-column align="left" label="码结束行" prop="建档日期" width="100" />
+						  <el-table-column align="left" label="码包" prop="更新日期" width="100" />
+						  <el-table-column align="left" label="主电表" prop="YB_方案"  width="100"/>
+						  <el-table-column align="left" label="辅电表" prop="YB_Yjno" width="100" />
+						  <el-table-column align="left" label="色度数" prop="印版类别" width="100" />
+                        </el-table>
+                        </el-tab-pane>
+            
+                        <el-tab-pane label="检验记录" @click="showTable('技术资料附件')" name="fourth">
+                        <el-table ref="multipleTable"
+                                  :row-style="{ height: '20px' }"
+                                  :cell-style="{ padding: '0px' }" :header-row-style="{ height: '20px' }"
+                                  :header-cell-style="{ padding: '0px' }"
+                                  :show-overflow-tooltip="true"
+                                  highlight-current-row="true"
+                                  style="width: 100%;height: 400px" border tooltip-effect="dark" :data="jstableData" row-key="ID" @selection-change="handleSelectionChange">
+            <!--              <el-table-column type="selection" width="55" />-->
+                          <el-table-column align="left" label="工单编号" prop="序号"  width="120"/>
+                          <el-table-column align="left" label="印件号" prop="适用工序" width="120" />
+                          <el-table-column align="left" label="工序名称" prop="备注" width="330" />
+                          <el-table-column align="left" label="检验项目" prop="文件类型" width="120"/>
+                          <el-table-column align="left" label="12:39" prop="关联产品"  width="100"/>
+                          <el-table-column align="left" label="13:08" prop="建档用户" width="100"/>
+                          <el-table-column align="left" label="13:25" prop="建档日期" width="100" />
+                          <el-table-column align="left" label="14:31" prop="更新日期" width="100" />
+                        </el-table>
+                        </el-tab-pane>
+            
+                      </el-tabs>
+            <!-- <div class="gva-pagination">
+              <el-pagination
+                  layout="total, sizes, prev, pager, next, jumper"
+                  :current-page="page"
+                  :page-size="pageSize"
+                  :page-sizes="[10, 30, 50, 100]"
+                  :total="total"
+                  @current-change="handleCurrentChange"
+                  @size-change="handleSizeChange"
+              />
+            </div> -->
+          </div>
+          <el-dialog v-model="dialogFormVisible" :before-close="closeDialog" :title="type==='create'?'添加':'修改'" destroy-on-close>
+          <el-tabs v-model="activeName" type="card" @tab-click="handleClick">
+            <el-tab-pane label="当日上报产量"  @click="showTable('工艺资料')"  name="first">
+              <el-table ref="multipleTable"
+                        :show-overflow-tooltip="true"
+                        :row-style="{ height: '20px' }"
+                        :cell-style="{ padding: '0px' }" :header-row-style="{ height: '20px' }"
+                        :header-cell-style="{ padding: '0px' }"
+                        highlight-current-row="true"
+                        style="width: 100%;height: 400px" border tooltip-effect="dark" :data="gytableData" row-key="ID" @selection-change="handleSelectionChange">
+                <el-table-column type="selection" width="55" />
+                <el-table-column align="left" label="选择" prop="工单编号"  width="100"/>
+                <el-table-column align="left" label="产品名称" prop="重点工序"  width="100"/>
+                <el-table-column align="left" label="工序" prop="工序备注"  width="240"/>
+                <el-table-column align="left" label="备注" prop="机组"  width="100"/>
+                <el-table-column align="left" label="产量" prop="小时产能"  width="100"/>
+                <el-table-column align="left" label="千件工价" prop="生产工时"  width="100"/>
+                <el-table-column align="left" label="日定额" prop="辅助工时"  width="100"/>
+                <el-table-column align="left" label="补产标准" prop="印刷方式"  width="100"/>
+                <el-table-column align="left" label="难度系数" prop="版距"  width="100"/>
+                <el-table-column align="left" label="印刷方式" prop="创建用户"  width="120"/>
+                <el-table-column align="left" label="组员1" prop="Gy0_gxh" width="240" />
+                <el-table-column align="left" label="组员2" prop="gy0_gxmc" width="240" />
+                <el-table-column align="left" label="组员3" prop="add_gxmc" width="240" />
+                <el-table-column align="left" label="组员4" prop="Gy0_Ks" width="240" />
+                <el-table-column align="left" label="组员5" prop="Gy0_ls" width="100" />
+                <el-table-column align="left" label="组员6" prop="备注" width="100" />
+                <el-table-column align="left" label="组员7" prop="工价系数" width="100" />
+                <el-table-column align="left" label="组员8" prop="损耗系数" width="100" />
+                <el-table-column align="left" label="组员9" prop="Gy0_Ms" width="100" />
+                <el-table-column align="left" label="组员10" prop="人工检_正品版" width="120" />
+				<el-table-column align="left" label="制程废品" prop="Sys_id" width="100" />
+				<el-table-column align="left" label="制程次品" prop="建档日期" width="100" />
+				<el-table-column align="left" label="前工序废" prop="更新日期" width="100" />
+				<el-table-column align="left" label="来料异常" prop="YB_方案"  width="100"/>
+				<el-table-column align="left" label="装版工时" prop="YB_Yjno" width="100" />
+				<el-table-column align="left" label="保养工时" prop="印版类别" width="100" />
+				<el-table-column align="left" label="打样工时" prop="存货编码" width="100"/>
+				<el-table-column align="left" label="异常停机工时" prop="印版名称"  width="120"/>
+				<el-table-column align="left" label="通电工时" prop="考核印数" width="100"/>
+				<el-table-column align="left" label="码开始行" prop="Sys_id" width="100" />
+				<el-table-column align="left" label="码结束行" prop="建档日期" width="100" />
+				<el-table-column align="left" label="码包" prop="更新日期" width="100" />
+				<el-table-column align="left" label="主电表" prop="YB_方案"  width="100"/>
+				<el-table-column align="left" label="辅电表" prop="YB_Yjno" width="100" />
+				<el-table-column align="left" label="色度数" prop="印版类别" width="100" />
+				<el-table-column align="left" label="用户" prop="YB_Yjno" width="100" />
+				<el-table-column align="left" label="更新时间" prop="印版类别" width="100" />
+              </el-table>
+            </el-tab-pane>
+          
+            <el-tab-pane label="当日制程检验记录"  @click="showTable('印件资料')"  name="second">
+              <el-table ref="multipleTable"
+                        :row-style="{ height: '20px' }"
+                        :cell-style="{ padding: '0px' }" :header-row-style="{ height: '20px' }"
+                        :header-cell-style="{ padding: '0px' }"
+                        :show-overflow-tooltip="true"
+                        highlight-current-row="true"
+                        style="width: 100%;height: 400px" border tooltip-effect="dark" :data="yjtableData" row-key="ID" @selection-change="handleSelectionChange">
+                <el-table-column type="selection" width="55" />
+                <el-table-column align="left" label="工单编号" prop="序号"  width="120"/>
+                <el-table-column align="left" label="印件号" prop="适用工序" width="120" />
+                <el-table-column align="left" label="工序名称" prop="备注" width="330" />
+                <el-table-column align="left" label="检验项目" prop="文件类型" width="120"/>
+                <el-table-column align="left" label="12:39" prop="关联产品"  width="100"/>
+                <el-table-column align="left" label="13:08" prop="建档用户" width="100"/>
+                <el-table-column align="left" label="13:25" prop="建档日期" width="100" />
+                <el-table-column align="left" label="14:31" prop="更新日期" width="100" />
+              </el-table>
+            </el-tab-pane>
+          </el-tabs>
+          </el-dialog>
+
+          <el-dialog v-model="detailShow" style="width: 800px" lock-scroll :before-close="closeDetailShow" title="查看详情" destroy-on-close>
+            <el-scrollbar height="550px">
+              <el-descriptions column="1" border>
+                <el-descriptions-item label="address字段">
+                  {{ formData.address }}
+                </el-descriptions-item>
+                <el-descriptions-item label="image字段">
+                  {{ formData.image }}
+                </el-descriptions-item>
+                <el-descriptions-item label="name字段">
+                  {{ formData.name }}
+                </el-descriptions-item>
+              </el-descriptions>
+            </el-scrollbar>
+          </el-dialog>
 
-<!--              &lt;!&ndash; 左侧查询输入框 &ndash;&gt;-->
-<!--              <el-form-item>-->
-<!--                <el-input v-model="searchInfo.keyword" placeholder="" clearable style="width: 200px;"></el-input>-->
-<!--              </el-form-item>-->
+        </el-main>
 
-<!--              &lt;!&ndash; 查询和重置按钮 &ndash;&gt;-->
-<!--              <el-form-item>-->
-<!--                <el-button type="primary" icon="search" @click="onSubmit">查询</el-button>-->
-<!--&lt;!&ndash;                <el-button icon="refresh" @click="onReset">重置</el-button>&ndash;&gt;-->
-<!--                <el-button type="primary" icon="plus" @click="openDialog">新增</el-button>-->
-<!--              </el-form-item>-->
-<!--            </el-form>-->
-<!--          </div>-->
+      </el-container>
+    </el-container>
 
-          <div class="gva-table-box">
 
-<!--            <el-table ref="multipleTable"-->
-<!--                      style="width: 100%"-->
-<!--                      border-->
-<!--                      tooltip-effect="dark"-->
-<!--                      :data="tableData"-->
-<!--                      row-key="ID"-->
-<!--                      @selection-change="handleSelectionChange">-->
-<!--              <el-table-column type="selection" width="55"/>-->
-<!--              <el-table-column align="left" label="生产分类" prop="生产分类" width="120" />-->
-<!--              <el-table-column align="left" label="工单编号" prop="工单编号" width="120" />-->
-<!--              <el-table-column align="left" label="产品代号" prop="产品代号" width="120" />-->
-<!--              <el-table-column align="left" label="产品名称" prop="产品名称" width="200" />-->
-<!--              <el-table-column align="left" label="接单日期" prop="接单日期" width="160" />-->
-<!--              <el-table-column align="left" label="交货日期" prop="交货日期" width="160" />-->
-<!--              <el-table-column align="left" label="订单数量" prop="订单数量" width="120" />-->
-<!--              <el-table-column align="left" label="计量单位" prop="计量单位" width="120" />-->
-<!--              <el-table-column align="left" label="客户名称" prop="客户名称" width="200" />-->
-<!--              <el-table-column align="left" label="客户编号" prop="客户编号" width="120" />-->
-<!--              <el-table-column align="left" label="备注" prop="备注" width="120" />-->
-<!--              <el-table-column align="left" label="客户料号" prop="客户料号" width="120" />-->
-<!--              <el-table-column align="left" label="创建用户" prop="创建用户" width="160" />-->
-<!--              <el-table-column align="left" label="创建时间" prop="创建时间" width="160" />-->
-<!--              <el-table-column align="left" label="修改时间" prop="修改时间" width="160" />-->
-<!--              <el-table-column align="left" label="UNIQID" prop="UNIQID" width="120" />-->
-<!--              <el-table-column align="left" label="投料率" prop="投料率" width="120" />-->
-<!--              <el-table-column align="left" label="销售订单号" prop="销售订单号" width="120" />-->
-<!--              <el-table-column align="left" label="操作" min-width="120" fixed='right'>-->
-<!--                <template #default="scope">-->
-<!--                  <el-button type="primary" link icon="edit" class="table-button" @click="updateCompanyFunc(scope.row)">变更</el-button>-->
-<!--                </template>-->
-<!--              </el-table-column>-->
-<!--            </el-table>-->
-            <!--            <div class="gva-pagination">-->
-            <!--              <el-pagination layout="total, sizes, prev, pager, next, jumper" :current-page="page" :page-size="pageSize" :page-sizes="[5,10, 30, 50, 100]" :total="total" @current-change="handleCurrentChange" @size-change="handleSizeChange"/>-->
-            <!--            </div>-->
-          </div>
 
 
 
-        </el-main>
-      </el-container>
-    </el-container>
   </div>
 </template>
 
 <script setup>
+import {
+  createCompany,
+  deleteCompany,
+  deleteCompanyByIds,
+  updateCompany,
+  findCompany,
+  getCompanyList
+} from '@/api/company'
+
+
+import {
+  demoCustomer
+} from "@/api/demo";
+
 // 全量引入格式化工具 请按需保留
-import {createCompany, deleteCompany, deleteCompanyByIds, updateCompany, findCompany, getCompanyList} from '@/api/company'
 import { getDictFunc, formatDate, formatBoolean, filterDict, ReturnArrImg, onDownloadFile } from '@/utils/format'
 import { ElMessage, ElMessageBox } from 'element-plus'
 import { ref, reactive } from 'vue'
-import {DataList, getDepartment, getProduct, getTab, Project, workbench} from "@/api/yunyin/yunying";
-defineOptions({name: 'Company'})
-
-// =========== 左侧树侧形结构 ===========
-
-const treeData = ref([]);
-const workbenchdata = async () => {
-  const data  = await getTab() //接口调用函数
-  console.log(data);
-};
-workbenchdata();
-
-//点击左侧树形获取列表
-const tableData = ref([])
-const handleNodeClick = async (node) => {
-  const custom_code = node.label; // 假设你想使用节点的 label 作为 custom_code
-  console.log(custom_code);
 
-};
+defineOptions({
+    name: 'Company'
+})
 
+const treeData=ref([{
+  label: '胶印车间',
+  children: [{
+    label: 'JY01# 【海德堡对开八色平板胶印机】',
+    children: [{
+      label: '2024.01.18', 
+    },{
+		label:'2024.01.17'},{
+		label:'2024.01.16'}],  
+  },{
+    label: 'JY02# 【海德堡对开八色平板胶印机】',
+    children: [{
+      label: '2024.01.18', 
+    },{
+    	label:'2024.01.17'},{
+    	label:'2024.01.16'}]
+  },{
+    label: 'JY03# 【海德堡对开八色平板胶印机】',
+    children: [{
+      label: '2024.01.18', 
+    },{
+    	label:'2024.01.17'},{
+    	label:'2024.01.16'}]
+  },{
+    label: 'JY04# 【海德堡对开八色平板胶印机】',
+    children: [{
+      label: '2024.01.18', 
+    },{
+    	label:'2024.01.17'},{
+    	label:'2024.01.16'}]
+  },], 
+}, {
+  label: '凹印车间',
+  children: [{
+    label: 'DW01# 【多功能凹版印刷机】',
+    children: [{
+      label: '2024.01.18', 
+    },{
+		label:'2024.01.17'},{
+		label:'2024.01.16'}],  
+  },{
+    label: 'DW02# 【多功能凹版印刷机】',
+    children: [{
+      label: '2024.01.18', 
+    },{
+    	label:'2024.01.17'},{
+    	label:'2024.01.16'}]
+  },{
+    label: 'DW03# 【多功能凹版印刷机】',
+    children: [{
+      label: '2024.01.18', 
+    },{
+    	label:'2024.01.17'},{
+    	label:'2024.01.16'}]
+  },{
+    label: 'DW04# 【多功能凹版印刷机】',
+    children: [{
+      label: '2024.01.18', 
+    },{
+    	label:'2024.01.17'},{
+    	label:'2024.01.16'}]
+  },], 
+}, {
+  label: '丝印车间',
+  children: [{
+    label: 'PM01# 【尚浩高速大单张】',
+    children: [{
+      label: '2024.01.18', 
+    },{
+		label:'2024.01.17'},{
+		label:'2024.01.16'}],  
+  },{
+    label: 'PM02# 【尚浩高速大单张】',
+    children: [{
+      label: '2024.01.18', 
+    },{
+    	label:'2024.01.17'},{
+    	label:'2024.01.16'}]
+  },{
+    label: 'PM03# 【尚浩高速大单张】',
+    children: [{
+      label: '2024.01.18', 
+    },{
+    	label:'2024.01.17'},{
+    	label:'2024.01.16'}]
+  },{
+    label: 'PM04# 【尚浩高速大单张】',
+    children: [{
+      label: '2024.01.18', 
+    },{
+    	label:'2024.01.17'},{
+    	label:'2024.01.16'}]
+  },], 
+},{
+  label: '烫膜车间',
+  children: [{
+    label: 'MQ01# 【众益自动模切】',
+    children: [{
+      label: '2024.01.18', 
+    },{
+		label:'2024.01.17'},{
+		label:'2024.01.16'}],  
+  },{
+    label: 'MQ02# 【众益自动模切】',
+    children: [{
+      label: '2024.01.18', 
+    },{
+    	label:'2024.01.17'},{
+    	label:'2024.01.16'}]
+  },{
+    label: 'MQ03# 【众益自动模切】',
+    children: [{
+      label: '2024.01.18', 
+    },{
+    	label:'2024.01.17'},{
+    	label:'2024.01.16'}]
+  },{
+    label: 'MQ04# 【众益自动模切】',
+    children: [{
+      label: '2024.01.18', 
+    },{
+    	label:'2024.01.17'},{
+    	label:'2024.01.16'}]
+  },], 
+},{
+  label: '检验车间',
+  children: [{
+    label: 'JP01# 【印品质量检测】',
+    children: [{
+      label: '2024.01.18', 
+    },{
+		label:'2024.01.17'},{
+		label:'2024.01.16'}],  
+  },{
+    label: 'JP02# 【印品质量检测】',
+    children: [{
+      label: '2024.01.18', 
+    },{
+    	label:'2024.01.17'},{
+    	label:'2024.01.16'}]
+  },{
+    label: 'JP03# 【印品质量检测】',
+    children: [{
+      label: '2024.01.18', 
+    },{
+    	label:'2024.01.17'},{
+    	label:'2024.01.16'}]
+  },{
+    label: 'JP04# 【印品质量检测】',
+    children: [{
+      label: '2024.01.18', 
+    },{
+    	label:'2024.01.17'},{
+    	label:'2024.01.16'}]
+  },], 
+}])
+const handleNodeClick = (node,check) => {
+  //存放当前节点的nodeId
+  console.log(node,check);
 
+}
 // 自动化生成的字典(可能为空)以及字段
 const formData = ref({
-  address: '',
-  image: '',
-  name: '',
-})
+        address: '',
+        image: '',
+        name: '',
+        })
+
 
 // 验证规则
 const rule = reactive({
@@ -120,16 +563,16 @@ const rule = reactive({
 const searchRule = reactive({
   createdAt: [
     { validator: (rule, value, callback) => {
-        if (searchInfo.value.startCreatedAt && !searchInfo.value.endCreatedAt) {
-          callback(new Error('请填写结束日期'))
-        } else if (!searchInfo.value.startCreatedAt && searchInfo.value.endCreatedAt) {
-          callback(new Error('请填写开始日期'))
-        } else if (searchInfo.value.startCreatedAt && searchInfo.value.endCreatedAt && (searchInfo.value.startCreatedAt.getTime() === searchInfo.value.endCreatedAt.getTime() || searchInfo.value.startCreatedAt.getTime() > searchInfo.value.endCreatedAt.getTime())) {
-          callback(new Error('开始日期应当早于结束日期'))
-        } else {
-          callback()
-        }
-      }, trigger: 'change' }
+      if (searchInfo.value.startCreatedAt && !searchInfo.value.endCreatedAt) {
+        callback(new Error('请填写结束日期'))
+      } else if (!searchInfo.value.startCreatedAt && searchInfo.value.endCreatedAt) {
+        callback(new Error('请填写开始日期'))
+      } else if (searchInfo.value.startCreatedAt && searchInfo.value.endCreatedAt && (searchInfo.value.startCreatedAt.getTime() === searchInfo.value.endCreatedAt.getTime() || searchInfo.value.startCreatedAt.getTime() > searchInfo.value.endCreatedAt.getTime())) {
+        callback(new Error('开始日期应当早于结束日期'))
+      } else {
+        callback()
+      }
+    }, trigger: 'change' }
   ],
 })
 
@@ -140,6 +583,7 @@ const elSearchFormRef = ref()
 const page = ref(1)
 const total = ref(0)
 const pageSize = ref(10)
+const tableData = ref([])
 const searchInfo = ref({})
 
 // 重置
@@ -197,19 +641,19 @@ setOptions()
 const multipleSelection = ref([])
 // 多选
 const handleSelectionChange = (val) => {
-  multipleSelection.value = val
+    multipleSelection.value = val
 }
 
 // 删除行
 const deleteRow = (row) => {
-  ElMessageBox.confirm('确定要删除吗?', '提示', {
-    confirmButtonText: '确定',
-    cancelButtonText: '取消',
-    type: 'warning'
-  }).then(() => {
-    deleteCompanyFunc(row)
-  })
-}
+    ElMessageBox.confirm('确定要删除吗?', '提示', {
+        confirmButtonText: '确定',
+        cancelButtonText: '取消',
+        type: 'warning'
+    }).then(() => {
+            deleteCompanyFunc(row)
+        })
+    }
 
 
 // 批量删除控制标记
@@ -217,60 +661,59 @@ const deleteVisible = ref(false)
 
 // 多选删除
 const onDelete = async() => {
-  const ids = []
-  if (multipleSelection.value.length === 0) {
-    ElMessage({
-      type: 'warning',
-      message: '请选择要删除的数据'
-    })
-    return
-  }
-  multipleSelection.value &&
-  multipleSelection.value.map(item => {
-    ids.push(item.ID)
-  })
-  const res = await deleteCompanyByIds({ ids })
-  if (res.code === 0) {
-    ElMessage({
-      type: 'success',
-      message: '删除成功'
-    })
-    if (tableData.value.length === ids.length && page.value > 1) {
-      page.value--
+      const ids = []
+      if (multipleSelection.value.length === 0) {
+        ElMessage({
+          type: 'warning',
+          message: '请选择要删除的数据'
+        })
+        return
+      }
+      multipleSelection.value &&
+        multipleSelection.value.map(item => {
+          ids.push(item.ID)
+        })
+      const res = await deleteCompanyByIds({ ids })
+      if (res.code === 0) {
+        ElMessage({
+          type: 'success',
+          message: '删除成功'
+        })
+        if (tableData.value.length === ids.length && page.value > 1) {
+          page.value--
+        }
+        deleteVisible.value = false
+        getTableData()
+      }
     }
-    deleteVisible.value = false
-    getTableData()
-  }
-}
 
 // 行为控制标记(弹窗内部需要增还是改)
 const type = ref('')
 
 // 更新行
 const updateCompanyFunc = async(row) => {
-  // const res = await findCompany({ ID: row.ID })
-  // type.value = 'update'
-  // if (res.code === 0) {
-  //     formData.value = res.data.recompany
-  //     dialogFormVisible.value = true
-  // }
-  dialogFormVisible.value = true
+    const res = await findCompany({ ID: row.ID })
+    type.value = 'update'
+    if (res.code === 0) {
+        formData.value = res.data.recompany
+        dialogFormVisible.value = true
+    }
 }
 
 
 // 删除行
 const deleteCompanyFunc = async (row) => {
-  const res = await deleteCompany({ ID: row.ID })
-  if (res.code === 0) {
-    ElMessage({
-      type: 'success',
-      message: '删除成功'
-    })
-    if (tableData.value.length === 1 && page.value > 1) {
-      page.value--
+    const res = await deleteCompany({ ID: row.ID })
+    if (res.code === 0) {
+        ElMessage({
+                type: 'success',
+                message: '删除成功'
+            })
+            if (tableData.value.length === 1 && page.value > 1) {
+            page.value--
+        }
+        getTableData()
     }
-    getTableData()
-  }
 }
 
 // 弹窗控制标记
@@ -302,53 +745,53 @@ const getDetails = async (row) => {
 const closeDetailShow = () => {
   detailShow.value = false
   formData.value = {
-    address: '',
-    image: '',
-    name: '',
-  }
+          address: '',
+          image: '',
+          name: '',
+          }
 }
 
 
 // 打开弹窗
 const openDialog = () => {
-  type.value = 'create'
-  dialogFormVisible.value = true
+    type.value = 'create'
+    dialogFormVisible.value = true
 }
 
 // 关闭弹窗
 const closeDialog = () => {
-  dialogFormVisible.value = false
-  formData.value = {
-    address: '',
-    image: '',
-    name: '',
-  }
+    dialogFormVisible.value = false
+    formData.value = {
+        address: '',
+        image: '',
+        name: '',
+        }
 }
 // 弹窗确定
 const enterDialog = async () => {
-  elFormRef.value?.validate( async (valid) => {
-    if (!valid) return
-    let res
-    switch (type.value) {
-      case 'create':
-        res = await createCompany(formData.value)
-        break
-      case 'update':
-        res = await updateCompany(formData.value)
-        break
-      default:
-        res = await createCompany(formData.value)
-        break
-    }
-    if (res.code === 0) {
-      ElMessage({
-        type: 'success',
-        message: '创建/更改成功'
+     elFormRef.value?.validate( async (valid) => {
+             if (!valid) return
+              let res
+              switch (type.value) {
+                case 'create':
+                  res = await createCompany(formData.value)
+                  break
+                case 'update':
+                  res = await updateCompany(formData.value)
+                  break
+                default:
+                  res = await createCompany(formData.value)
+                  break
+              }
+              if (res.code === 0) {
+                ElMessage({
+                  type: 'success',
+                  message: '创建/更改成功'
+                })
+                closeDialog()
+                getTableData()
+              }
       })
-      closeDialog()
-      getTableData()
-    }
-  })
 }
 
 </script>

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