浏览代码

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

Lexie 1 年之前
父节点
当前提交
940169d369
共有 2 个文件被更改,包括 77 次插入64 次删除
  1. 69 42
      src/view/yunyin/chanpinziliao/chanpinziliao.vue
  2. 8 22
      src/view/yunyin/shengchanguanli/gongdanziliao.vue

+ 69 - 42
src/view/yunyin/chanpinziliao/chanpinziliao.vue

@@ -579,8 +579,13 @@
         <layout-sider :resize-directions="['right']" :width="190" style="margin-right: 10px;">
           <div class="JKWTree-tree" style="height: 200px">
             <h3> 产品管理</h3>
-            <el-tree :data="treeData" @node-click="handleNodeClick" @node-expand="handleNodeExpand">
-              <template #default="{node,data}">{{data['客户编号']}}【{{data['客户名称']}}】</template>
+<!--            <el-tree :data="treeData" @node-click="handleNodeClick" @node-expand="handleNodeExpand">-->
+<!--              <template #default="{node,data}">{{data['客户编号']}}【{{data['客户名称']}}】</template>-->
+<!--            </el-tree>-->
+            <el-tree :data="treeData" node-key="label" @node-click="handleNodeClick" @node-expand="handleNodeExpand">
+              <template #default="{ node, data }">
+                {{ node.label }}
+              </template>
             </el-tree>
           </div>
         </layout-sider>
@@ -620,22 +625,14 @@
               <el-table-column   sortable align="left" label="更新日期" prop="Mod_rq" width="160" />
             </el-table>
             <div class="gva-pagination">
-<!--              <el-pagination-->
-<!--                  @size-change="handleSizeChange"-->
-<!--                  @current-change="handleCurrentChange"-->
-<!--                  :current-page="page"-->
-<!--                  :page-sizes="[10, 30, 50, 100]"-->
-<!--                  :page-size="pageSize"-->
-<!--                  layout="total, sizes, prev, pager, next, jumper"-->
-<!--                  :total="total">-->
-<!--              </el-pagination>-->
+<!--              // 组件中使用 pagination 对象-->
               <el-pagination
                   @size-change="handleSizeChange"
                   @current-change="handleCurrentChange"
-                  :current-page="page"
+                  :current-page="pagination.page"
                   :page-sizes="[10, 30, 50, 100]"
                   layout="total, sizes, prev, pager, next, jumper"
-                  :total="total">
+                  :total="pagination.total">
               </el-pagination>
             </div>
           </div>
@@ -2438,10 +2435,25 @@ const hscstzCancel = () => {hscstzlist.value = false;};
 const treeData = ref({})
 const getCustomdata = async () => {
   try {
-    const data  = await getCustom()
-    console.log("左侧菜单列表↓")
-    console.log(data)
-    treeData.value = data.data;
+    // const data  = await getCustom()
+    // console.log("左侧菜单列表↓")
+    // console.log(data)
+    // treeData.value = data.data;
+    const response = await getCustom();
+    console.log("左侧菜单列表↓");
+    console.log(response);
+    const formattedData = [];
+    for (const category in response.data) {
+      const categoryNode = {
+        label: category, // 使用分类名称作为节点标签
+        children: response.data[category].map(item => ({
+          label: `${item['客户编号']}【${item['客户名称']}】`, // 将客户信息格式化为节点标签
+          ...item // 保留原始数据,可能在后面需要使用
+        }))
+      };
+      formattedData.push(categoryNode);
+    }
+    treeData.value = formattedData;
   } catch (error) {
     console.error('Error fetching custom data:', error);
   }
@@ -2452,6 +2464,11 @@ getCustomdata()
 const tableData = reactive([])
 const _custom_code = ref(null)
 const handleNodeClick = async (node) => {
+  if(node.label === '印刷产品' || node.label === '糊盒产品'){
+    tableData.splice(0);
+    return false;
+  }
+  console.log(node.客户编号)
   _custom_code.value = node.客户编号;
   //清空搜索框
   searchInfo.value = '';
@@ -2477,7 +2494,7 @@ const tableRowClick = async (row) => {
   _product_code.value = row.产品编号;
   _kehu_code.value = row.产品名称;
   const res = await getProductData({product_code:_product_code.value});
-  console.log("点击表格行 下方表格获取数据")
+  console.log(row.产品编号 + "--->下方表格获取数据")
   console.log(res)
   yjtableData.splice(0, yjtableData.length, ...res.data.yjData);
   gytableData.splice(0, gytableData.length, ...res.data.gyData);
@@ -2490,8 +2507,6 @@ const tableRowClick = async (row) => {
 	  tmp = tmp.sort((a,b)=>b-a)
 	  yjzuidahaoma.value = Number(tmp[0]) + 1
   }
-  // console.log(yjzuidahaoma.value)
-  // yjzuidahaoma.value = yjtableData.length+1
 };
 
 //搜索查询
@@ -2502,40 +2517,52 @@ const onSubmit = () => {
   _getProduct();
 };
 
-//封装获取单个产品基础数据方法
-const _getProduct = async ()=>{
-  let params = {}
-  params.search = searchInfo.value;
-  params.custom_code = _custom_code.value;
-  params.limit = pageSize.value;
-  params.page = page.value;
+// 分页参数和表格数据作为响应式对象
+const pagination = reactive({
+  page: 1,
+  total: 0,
+  pageSize: 10,
+  isLoading: false, // 加载状态
+});
+// 封装获取单个产品基础数据方法
+const _getProduct = async () => {
+  let params = {
+    search: searchInfo.value,
+    custom_code: _custom_code.value,
+    limit: pagination.pageSize,
+    page: pagination.page,
+  };
+  console.log(params);
+  pagination.isLoading = true; // 开始加载
   try {
     const WorkListdata = await getProduct(params);
-    console.log("通过左侧菜单列表获取数据↓")
-    console.log(WorkListdata.data.data)
-    if(WorkListdata.data.data === []){
-      ElMessage({type: 'warning',message: '未查询到搜索条件'})
-    }else{
-      tableData.splice(0, tableData.length, ...WorkListdata.data.data);//表格
-      total.value = WorkListdata.data.total;//共多少条
+    console.log("通过左侧菜单列表获取数据↓");
+    console.log(WorkListdata.data.data);
+    if (WorkListdata.data.data.length === 0) {
+      ElMessage({ type: 'warning', message: '未查询到搜索条件' });
+      tableData.length = 0; // 清空表格数据
+      pagination.total = 0; // 重置总数
+    } else {
+      tableData.splice(0, tableData.length, ...WorkListdata.data.data); // 更新表格数据
+      pagination.total = WorkListdata.data.total; // 更新总数
     }
   } catch (error) {
     console.error(error);
+    ElMessage({ type: 'error', message: '数据加载失败' });
+  } finally {
+    pagination.isLoading = false; // 结束加载
   }
-}
+};
 
-// 分页
-const page = ref(1)
-const total = ref(0)
-const pageSize = ref(30)
+// 分页处理函数
 const handleCurrentChange = (val) => {
-  page.value = val;
+  pagination.page = val;
   _getProduct();
 };
 
-// 修改页面容量 点击多少条/页
 const handleSizeChange = (val) => {
-  pageSize.value = val;
+  pagination.pageSize = val;
+  pagination.page = 1; // 修改每页数量时重置到第一页
   _getProduct();
 };
 

+ 8 - 22
src/view/yunyin/shengchanguanli/gongdanziliao.vue

@@ -1764,7 +1764,9 @@ const _getOrderProcessLeft_list = async () => {
 };
 //点击左侧获取工序显示右侧数据
 const lcd_handleNodeClick = async (node) => {
-  if (node.value === undefined) return
+  if (node.value === undefined || node.value === null){
+      return false;
+  }
   const order = gd_lcdformData['gdbh'];
   //5.2流程单查询-获取工单工序生产进程右侧【接口】
   const getOrderProcessRight_list = await getOrderProcessRight({order:order, gxNo:node.value});
@@ -2965,6 +2967,7 @@ const DataListdata = async () => {
     console.error(error);
   }
 };
+
 // const DataListdata = async () => {
 //   try {
 //     const data = await DataList();
@@ -2989,46 +2992,29 @@ DataListdata();
 const tableData = reactive([])
 const _Gd_khdh = ref(null)
 const handleNodeClick = async (node) => {
-  // // 取消所有节点的颜色
-  // const allNodes = document.querySelectorAll('.treecolor .el-tree-node');
-  // allNodes.forEach(node => {
-  //   node.querySelector('.el-tree-node__label').style.color = '';
-  // });
-  // // 获取点击的节点
-  // const clickedNodeId = node['$treeNodeId'];
-  // console.log(clickedNodeId);
-  // const clickedNode = document.querySelector(`.treecolor .el-tree-node[data-key="${clickedNodeId}"]`);
-  // if (clickedNode) {
-  //   console.log(clickedNode);
-  //   // 给当前点击的节点改变颜色
-  //   clickedNode.querySelector('.el-tree-node__label').style.color = 'red';
-  // }
-
+  if(node.id === '印刷工单' || node.id === '糊盒工单'){
+    tableData.splice(0);
+    return false;
+  }
   searchInfo.value = '';
   gytableData.value = [];
   yjtableData.value = [];
   bomtableData.value = [];
   jstableData.value = [];
-  // console.log(node.label)
   if (node.label) {
     var parts = node.label.split('【');
     if (parts.length > 1) {
-      // console.log(parts[0]); // 输出“【”左侧的数据
       _Gd_khdh.value = parts[0]
     } else {
       // console.log(node.label); // 如果没有“【”,直接输出原字符串
       // _Gd_khdh.value = node.label
     }
   }
-  // _Gd_khdh.value = node.label.substring(0, 4);
   _WorkList_page();
 };
 //工单资料
 const _WorkList_page = async () => {
   console.log(_Gd_khdh.value)
-  // if(_Gd_khdh.value === '' || _Gd_khdh.value === null){
-  //   _Gd_khdh.value = '';
-  // }
   try {
     const WorkListdata = await WorkList({Gd_khdh:_Gd_khdh.value,limit:pageSize.value,page:page.value});
     console.log(WorkListdata)