|
|
@@ -19,6 +19,8 @@
|
|
|
<el-button type="primary" class="bt" @click="onDel" v-if="DelType === true" >删除</el-button>
|
|
|
<el-button type="primary" icon="edit" @click="deldbcl_onclick" :disabled="dbclSelection === ''" class="bt" title="当班产量明细" >当班产量明细删除</el-button>
|
|
|
<el-button type="primary" class="bt" @click="onRCL">日产量批量维护</el-button>
|
|
|
+ <el-button type="primary" class="bt" @click="pd_lcdlistonClick" >流程单查询</el-button>
|
|
|
+ <el-button type="primary" class="bt" @click="scpconClick" >工单生产批次信息查询</el-button>
|
|
|
<!-- <el-button type="primary" @click="onClear2" >换型清场</el-button> -->
|
|
|
</header>
|
|
|
|
|
|
@@ -403,6 +405,203 @@
|
|
|
</div>
|
|
|
</el-dialog>
|
|
|
|
|
|
+<!--流程单查询【弹窗】-->
|
|
|
+ <el-dialog v-model="pd_lcdlist" title="工单工序生产进程" style="width: 100%;height: 100%;margin: 0px;padding: 0px;">
|
|
|
+ <div style="width: 100%;height: 100%;">
|
|
|
+ <el-button type="" @click="pd_lcdCancel">退出</el-button>
|
|
|
+ </div>
|
|
|
+ <br>
|
|
|
+ <div style="width: 100%; height: 100%; display: flex; align-items: center;">
|
|
|
+ <el-form-item label="工单编号" style="margin-right: 20px; padding: 0;">
|
|
|
+ <el-input v-model="pd_lcdformData['gdbh']" @keyup.enter="pd_lcdProductValue"/>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="印件号" style="margin-right: 5px; padding: 0;">
|
|
|
+ <el-input v-model="pd_lcdformData['yjno']" @keyup.enter="pd_lcdProductValue"/>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="" style="margin-right: 5px; padding: 0;">
|
|
|
+ <el-input v-model="pd_lcdformData['code']" disabled/>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="" style="margin-right: 5px; padding: 0;">
|
|
|
+ <el-input v-model="pd_lcdformData['name']" disabled style="width: 500px"/>
|
|
|
+ </el-form-item>
|
|
|
+ </div>
|
|
|
+ <div style="width: 100%; height: 70vh; display: flex;">
|
|
|
+ <layout>
|
|
|
+ <layout-sider :resize-directions="['right']" :width="240" style="margin-right: 10px;height: 70vh;">
|
|
|
+ <div class="JKWTree-tree">
|
|
|
+ <el-tree :data="pd_lcd_treeData" @node-click="pd_lcd_handleNodeClick" default-expand-all></el-tree>
|
|
|
+ </div>
|
|
|
+ </layout-sider>
|
|
|
+ <!-- <br> -->
|
|
|
+ <layout-main>
|
|
|
+ <div style="display: flex; align-items: center;margin-left: 25px;">
|
|
|
+ <el-tag type="success" style="width: 55px; height: 40px; margin-right: 10px;"><h2>流程号</h2></el-tag>
|
|
|
+ <h2 style="margin: 0 20px 0 0;">绿格子图标表示“已完成”</h2>
|
|
|
+ <el-tag type="danger" style="width: 55px; height: 40px; margin-right: 10px;"><h2>流程号</h2></el-tag>
|
|
|
+ <h2 style="margin: 0;">红格子图标表示“未完成”</h2>
|
|
|
+ </div>
|
|
|
+ <!-- 这里放右侧的内容 -->
|
|
|
+ <el-space wrap style="margin-left: 20px;">
|
|
|
+ <!-- 右侧内容 -->
|
|
|
+ <template v-for="item in processList.total_process" >
|
|
|
+ <el-button class="custom-buttons" disabled :type="! processList.process.includes(item) ? 'danger' : 'info'" plain style="width: 50px;">{{ item }}</el-button>
|
|
|
+ </template>
|
|
|
+ </el-space>
|
|
|
+ </layout-main>
|
|
|
+ </layout>
|
|
|
+ </div>
|
|
|
+ </el-dialog>
|
|
|
+
|
|
|
+
|
|
|
+ <!--工单生产批次信息查询【弹窗】-->
|
|
|
+ <el-dialog v-model="scpconlist" title="工单生产批次信息查询" style="width: 100%;height: 100%;margin: 0px;padding: 0px;">
|
|
|
+ <el-button type="primary" @click="ontuicclicks" style="color: white;margin-left: 20px;" class="bt" title="退出">退出</el-button>
|
|
|
+ <div
|
|
|
+ style="
|
|
|
+ width: 60%;
|
|
|
+ height: 470px;
|
|
|
+ position: fixed;
|
|
|
+ left: 25%;
|
|
|
+ padding: 20px;
|
|
|
+ border-radius: 8px;
|
|
|
+ background-color: #fff;
|
|
|
+ box-shadow: 0 2px 12px rgba(0, 0, 0, 0.1);">
|
|
|
+ <div style="margin-top: 10px;">
|
|
|
+ <!-- 提示信息 -->
|
|
|
+ <hr>
|
|
|
+ <p style="font-size: 14px; color: red; margin: 10px 0;">搜索栏目为空,则从最近2周完工的工单中选择</p>
|
|
|
+ <p style="font-size: 14px; color: red; margin: 10px 0;">否则,以栏目值为关键字,从工单编号、产品名称、客户名称中选择</p>
|
|
|
+ <hr>
|
|
|
+
|
|
|
+ <!-- 输入框和按钮 -->
|
|
|
+ <div style="display: flex; align-items: center; margin-top: 10px;">
|
|
|
+ <el-input v-model="searchInfolcd" placeholder="Enter回车搜索工单编号" @keydown="Enterkeysearch" id="searchInfo" style="height: 40px;flex: 1;"></el-input>
|
|
|
+ <el-button type="primary" title="搜索" icon="el-icon-search" style="width: 70px;height: 40px;font-size: 18px;" @click="onSubmitlcd" >搜索</el-button>
|
|
|
+ <el-button type="primary" title="查看" icon="el-icon-search" style="width: 110px;height: 40px;font-size: 18px;" @click="onstatsuclick" >查看流程单</el-button>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <!-- 表格展示区域 -->
|
|
|
+ <div class="gva-table-box" style="margin-top: 15px;">
|
|
|
+ <el-table
|
|
|
+ ref="multipleTable"
|
|
|
+ style="width: 100%; height: 30vh; verflow: auto;"
|
|
|
+ :row-style="{ height: '20px' }" :header-cell-style="{ padding: '0px' }"
|
|
|
+ :cell-style="{ padding: '0px' }" :header-row-style="{ height: '20px' }"
|
|
|
+ :data="tableDatalcd"
|
|
|
+ :border="true"
|
|
|
+ :tooltip-effect="'dark'"
|
|
|
+ row-key="ID"
|
|
|
+ highlight-current-row
|
|
|
+ @row-click="tableRowClicklcd"
|
|
|
+ @row-dblclick="updateCompanyFunclcd"
|
|
|
+ @selection-change="handleSelectionChange">
|
|
|
+ <el-table-column align="left" label="工单编号" width="115" prop="Gd_gdbh" />
|
|
|
+ <el-table-column align="left" label="行号" width="60" prop="行号" />
|
|
|
+ <el-table-column align="left" label="工序名称" prop="Gd_cpmc" />
|
|
|
+ <!-- <el-table-column prop="工单" label="工单编号-行号-工序名称" align="left" sortable show-overflow-tooltipmin-width="300"/> -->
|
|
|
+ </el-table>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <!-- 机台生产日报表维护弹窗 -->
|
|
|
+ <el-dialog v-model="popdialog" title="机台生产日报表维护" destroy-on-close width="90%" style="height: 92%; margin-left: 5%; margin-top: 1%;">
|
|
|
+ <div>
|
|
|
+ <!-- 顶层布局 -->
|
|
|
+ <layout>
|
|
|
+ <!-- 顶部的搜索区域 -->
|
|
|
+ <layout-header>
|
|
|
+ <el-form ref="elSearchFormRef" class="demo-form-inline" :rules="searchRule">
|
|
|
+ <!-- 添加按钮 -->
|
|
|
+ <el-button type="primary" icon="edit" style="color: white;margin-left: 20px;" @click="ontuicclick" class="bt" title="退出">退出</el-button>
|
|
|
+ </el-form>
|
|
|
+ </layout-header>
|
|
|
+
|
|
|
+ <!-- 左右布局 -->
|
|
|
+ <layout style="height: calc(100% - 50px); display: flex;">
|
|
|
+ <!-- 左侧树形区域 -->
|
|
|
+ <layout-sider style="width: 140px; margin-right: 10px; overflow: hidden;height: 584px;">
|
|
|
+ <div class="JKWTree-tree" style="height: 100%; max-height: 100vh; overflow-y: auto;">
|
|
|
+ <h3></h3>
|
|
|
+ <el-tree
|
|
|
+ :data="treeDatalcd"
|
|
|
+ node-key="num"
|
|
|
+ highlight-current
|
|
|
+ :props="defaultProps"
|
|
|
+ @node-click="handleNodeClicklcd"
|
|
|
+ />
|
|
|
+ </div>
|
|
|
+ </layout-sider>
|
|
|
+
|
|
|
+
|
|
|
+ <!-- 右侧表格区域 -->
|
|
|
+ <layout-content style="flex: 1; overflow: auto;">
|
|
|
+ <el-main>
|
|
|
+ <div style="width: 100%; font-family: Arial, sans-serif; font-size: 14px;">
|
|
|
+ <div style="display: flex; justify-content: space-between; margin-bottom: 10px;">
|
|
|
+ <p style="flex: 0.4; margin: 0;">工单编号:<span style="color: red;">{{ _GetorderDetail['Gd_gdbh'] }}</span></p>
|
|
|
+ <p style="flex: 0.3; margin: 0;">产品代号:<span style="color: red;">{{ _GetorderDetail['Gd_cpdh'] }}</span></p>
|
|
|
+ <p style="flex: 1; margin: 0;">产品名称:<span style="color: red;">{{ _GetorderDetail['Gd_cpmc'] }}</span></p>
|
|
|
+ </div>
|
|
|
+ <div style="display: flex; justify-content: space-between; margin-bottom: 10px;">
|
|
|
+ <p style="flex: 0.4; margin: 0;">订单数量:<span style="color: red;">{{ _GetorderDetail['订单数量'] }}</span></p>
|
|
|
+ <p style="flex: 0.3; margin: 0;">实际投料:<span style="color: red;">{{ _GetorderDetail['实际投料'] }}</span></p>
|
|
|
+ <p style="flex: 1; margin: 0;">
|
|
|
+ 单位:<span style="color: red;">{{ _GetorderDetail['计量单位'] }}</span>
|
|
|
+ 目标合格率:<span style="color: red;">{{ _GetorderDetail['投料率'] }}</span>
|
|
|
+ </p>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <el-tabs v-model="activeName" @tab-click="handleClick">
|
|
|
+ <el-tab-pane label="工艺及生产班组" @click="showTable('工艺及生产班组')" name="first">
|
|
|
+ <el-table tooltip-effect="dark" :data="lcdtableData" row-key="ID"
|
|
|
+ highlight-current-row="true"
|
|
|
+ :row-style="{ height: '0px' }" :header-cell-style="{ padding: '0px' }"
|
|
|
+ :cell-style="{ padding: '0px' }" :header-row-style="{ height: '0px' }"
|
|
|
+ border :show-overflow-tooltip="true" :cell-class-name="planUsageCellClass"
|
|
|
+ style="width: 100%;height: 56vh" ref="tablesczl_gxmc"
|
|
|
+ @row-dblclick="gyscbzSelectClick">
|
|
|
+ <el-table-column align="left" label="流程单号" width="81" prop="流程单号" />
|
|
|
+ <el-table-column align="left" label="工序号" width="68" prop="工序号" />
|
|
|
+ <el-table-column align="left" label="工序名称" width="240" prop="工序名称" />
|
|
|
+ <el-table-column align="left" label="生产日期" width="120" prop="生产日期" />
|
|
|
+ <el-table-column align="left" label="机台编号" width="81" prop="机台编号" />
|
|
|
+ <el-table-column align="left" label="班组人员01" width="105" :formatter="(row) => `${row.sczl_bh1 || ''} ${row.name1 || ''}`"/>
|
|
|
+ <el-table-column align="left" label="班组人员02" width="105" :formatter="(row) => `${row.sczl_bh2 || ''} ${row.name2 || ''}`"/>
|
|
|
+ <el-table-column align="left" label="班组人员03" width="105" :formatter="(row) => `${row.sczl_bh3 || ''} ${row.name3 || ''}`"/>
|
|
|
+ <el-table-column align="left" label="班组人员04" width="105" :formatter="(row) => `${row.sczl_bh4 || ''} ${row.name4 || ''}`"/>
|
|
|
+ <el-table-column align="left" label="班组人员05" width="105" :formatter="(row) => `${row.sczl_bh5 || ''} ${row.name5 || ''}`"/>
|
|
|
+ <el-table-column align="left" label="班组人员06" width="105" :formatter="(row) => `${row.sczl_bh6 || ''} ${row.name6 || ''}`"/>
|
|
|
+ <el-table-column align="left" label="班组人员07" width="105" :formatter="(row) => `${row.sczl_bh7 || ''} ${row.name7 || ''}`"/>
|
|
|
+ <el-table-column align="left" label="班组人员08" width="105" :formatter="(row) => `${row.sczl_bh8 || ''} ${row.name8 || ''}`"/>
|
|
|
+ <el-table-column align="left" label="班组人员09" width="105" :formatter="(row) => `${row.sczl_bh9 || ''} ${row.name9 || ''}`"/>
|
|
|
+ <el-table-column align="left" label="班组人员10" width="105" :formatter="(row) => `${row.sczl_bh10 || ''} ${row.name10 || ''}`"/>
|
|
|
+ </el-table>
|
|
|
+ </el-tab-pane>
|
|
|
+
|
|
|
+ <el-tab-pane label="制程异常记录" @click="showTable('制程异常记录')" name="second">
|
|
|
+ <el-table tooltip-effect="dark" :data="zcycjltableData" row-key="ID"
|
|
|
+ highlight-current-row="true"
|
|
|
+ :row-style="{ height: '0px' }" :header-cell-style="{ padding: '0px' }"
|
|
|
+ :cell-style="{ padding: '0px' }" :header-row-style="{ height: '0px' }"
|
|
|
+ border :show-overflow-tooltip="true" :cell-class-name="planUsageCellClass"
|
|
|
+ style="width: 100%;height: 65vh" ref="tablzcycjl_gxmc"
|
|
|
+ @row-dblclick="zcycjlSelectClick">
|
|
|
+ <el-table-column align="left" label="流程单号" width="100" prop="流程单号" />
|
|
|
+ <el-table-column align="left" label="数量" width="100" prop="数量" />
|
|
|
+ <el-table-column align="left" label="异常备注" width="400" prop="缺陷备注" />
|
|
|
+ <el-table-column align="left" label="用户" width="160" prop="用户" />
|
|
|
+ </el-table>
|
|
|
+ </el-tab-pane>
|
|
|
+
|
|
|
+ </el-tabs>
|
|
|
+ </el-main>
|
|
|
+ </layout-content>
|
|
|
+ </layout>
|
|
|
+ </layout>
|
|
|
+ </div>
|
|
|
+ </el-dialog>
|
|
|
+ </el-dialog>
|
|
|
|
|
|
<!-- 组员及分配比例 -->
|
|
|
<el-dialog v-model="blModel" :before-close="() => blModel = false" style="width: 20%" @keydown="selectBZRR($event)">
|
|
|
@@ -2200,7 +2399,9 @@ import {
|
|
|
} from '@/api/company'
|
|
|
import {
|
|
|
EquipmentSchedulingEdit, Procedure,
|
|
|
- teamDel, WorkList, WorkOrderDel,PrintDetailList
|
|
|
+ teamDel, WorkList, WorkOrderDel,PrintDetailList,
|
|
|
+ getOrderProcessLeft,
|
|
|
+ getOrderProcessRight
|
|
|
} from "@/api/yunyin/yunying";
|
|
|
import {
|
|
|
facilityTab,
|
|
|
@@ -2269,7 +2470,12 @@ MachineTeamAdd,
|
|
|
setMachineTeam,
|
|
|
} from '@/api/jixiaoguanli/baogong'
|
|
|
import {
|
|
|
- FieldInspectionRecord
|
|
|
+ FieldInspectionRecord,
|
|
|
+ StaGetOrderList,
|
|
|
+ StaGetList,
|
|
|
+ StaProcessList,
|
|
|
+ StaGetOrderDetail,
|
|
|
+ StaProcessAnomaly,
|
|
|
} from "@/api/mes/job";
|
|
|
import Shebeizhuangtai from '@/view/performance/09-workOrderVerification/componets/shebeizhuangtai.vue'
|
|
|
// 全量引入格式化工具 请按需保留
|
|
|
@@ -2311,6 +2517,9 @@ let JYData = reactive([])
|
|
|
const selectData = ref([])
|
|
|
const isJPJT = ref(false)
|
|
|
const handleNodeClick = (nodeData,node) => {
|
|
|
+ //清空流程单查询的工单
|
|
|
+ lcd_Gd_gdbh.value=''
|
|
|
+ lcd_Gd_gdbh.value=formData.value.工单编号;
|
|
|
// 取消所有节点的颜色
|
|
|
const allNodes = document.querySelectorAll('.treecolor .el-tree-node');
|
|
|
allNodes.forEach(node => {
|
|
|
@@ -5183,6 +5392,236 @@ const selectBz_rcl = () => {
|
|
|
}
|
|
|
|
|
|
|
|
|
+// =========== 流程单查询 ===========
|
|
|
+
|
|
|
+const pd_lcdlist = ref(false);
|
|
|
+const pd_lcdformData = reactive({
|
|
|
+ gdbh: '',
|
|
|
+ code: '',
|
|
|
+ name: '',
|
|
|
+ yjno: '',
|
|
|
+});
|
|
|
+// 流程单查询按钮
|
|
|
+const processList = ref([]);
|
|
|
+const pd_lcdlistonClick = async () => {
|
|
|
+ if(formData.value.工单编号 === ''){
|
|
|
+ ElMessage({
|
|
|
+ type: 'warning',
|
|
|
+ message: '请选择一条工单'
|
|
|
+ })
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ console.log(formData)
|
|
|
+ if(lcd_Gd_yjno.value === '' || lcd_Gd_yjno.value === null){
|
|
|
+ console.log(formData.value.工单编号)
|
|
|
+ console.log(formData.value.印件号)
|
|
|
+ pd_lcdformData['gdbh'] = formData.value.工单编号;
|
|
|
+ pd_lcdformData['yjno'] = formData.value.印件号;
|
|
|
+ // ElMessage({type: 'warning',message: '请选择具体的工单,在进行操作'})
|
|
|
+ // return false;
|
|
|
+ }else{
|
|
|
+ pd_lcdformData['gdbh'] = lcd_Gd_gdbh.value;
|
|
|
+ pd_lcdformData['yjno'] = lcd_Gd_yjno.value;
|
|
|
+ console.log(pd_lcdformData)
|
|
|
+ }
|
|
|
+ pd_lcdlist.value = true;
|
|
|
+ processList.value = []
|
|
|
+ _getOrderProcessLeft_list();
|
|
|
+}
|
|
|
+const pd_lcdProductValue = async () => {
|
|
|
+ _getOrderProcessLeft_list();
|
|
|
+}
|
|
|
+const pd_lcd_treeData = ref([]);
|
|
|
+const _getOrderProcessLeft_list = async () => {
|
|
|
+ const order = pd_lcdformData['gdbh'];
|
|
|
+ const yjno = pd_lcdformData['yjno']
|
|
|
+ // console.log(order)
|
|
|
+ try {
|
|
|
+ //5.1流程单查询-工单工序生产进程菜单栏
|
|
|
+ const getOrderProcessLeft_list = await getOrderProcessLeft({ order:order,yjno:yjno});
|
|
|
+ console.log(getOrderProcessLeft_list)
|
|
|
+ pd_lcdformData['code'] = getOrderProcessLeft_list.data.Gd_info['code'];
|
|
|
+ pd_lcdformData['name'] = getOrderProcessLeft_list.data.Gd_info['name'];
|
|
|
+ pd_lcd_treeData.value = [{
|
|
|
+ label: order + '-' + getOrderProcessLeft_list.data.Gd_info['name'],
|
|
|
+ // label: order + '-' + getOrderProcessLeft_list.data.Gd_info['code'] + '-' + getOrderProcessLeft_list.data.Gd_info['name'],
|
|
|
+ value: undefined,
|
|
|
+ children: []
|
|
|
+ }]
|
|
|
+ const newData = [];
|
|
|
+ for (let key in getOrderProcessLeft_list.data.Gy_info) {
|
|
|
+ let temp = getOrderProcessLeft_list.data.Gy_info[key];
|
|
|
+ let concatenatedValue = `${temp.Gy0_yjno}-${temp.Gy0_gxh} ---> ${temp.Gy0_gxmc}`;
|
|
|
+ newData.push({ label: concatenatedValue,value: temp.Gy0_gxh });
|
|
|
+ }
|
|
|
+ pd_lcd_treeData.value[0].children = newData;
|
|
|
+ //5.2流程单查询-获取工单工序生产进程右侧【进入页面默认显示第一个】
|
|
|
+ const getOrderProcessRight_list = await getOrderProcessRight({order:order, gxNo:newData[0].value,yjno:yjno});
|
|
|
+ processList.value = getOrderProcessRight_list.data
|
|
|
+ } catch (error) {
|
|
|
+ console.error(error);
|
|
|
+ }
|
|
|
+};
|
|
|
+
|
|
|
+const pd_lcd_handleNodeClick = async (node) => {
|
|
|
+ if (node.value === undefined) return
|
|
|
+ const order = pd_lcdformData['gdbh'];
|
|
|
+ const yjno = pd_lcdformData['yjno'];
|
|
|
+ ////5.2流程单查询-获取工单工序生产进程右侧
|
|
|
+ const getOrderProcessRight_list = await getOrderProcessRight({order:order, gxNo:node.value,yjno:yjno});
|
|
|
+ console.log(getOrderProcessRight_list)
|
|
|
+ processList.value = getOrderProcessRight_list.data
|
|
|
+};
|
|
|
+
|
|
|
+// 流程单查询退出
|
|
|
+const pd_lcdCancel = async () => {
|
|
|
+ pd_lcdlist.value = false;
|
|
|
+}
|
|
|
+
|
|
|
+/*
|
|
|
+ 工单生产批次信息查询
|
|
|
+*/
|
|
|
+const scpconlist = ref(false);
|
|
|
+const scpconClick = async () => {
|
|
|
+ console.log(formData.value.工单编号)
|
|
|
+ searchInfolcd.value = formData.value.工单编号
|
|
|
+ scpconlist.value = true;
|
|
|
+ tableDatalcd.splice(0,tableDatalcd.length,...[]);//表格数据
|
|
|
+ onSubmitlcd()//调用接口
|
|
|
+}
|
|
|
+//进入页面默认光标加载
|
|
|
+setTimeout(() => {
|
|
|
+ const inputElement = document.getElementById('searchInfo');
|
|
|
+ if (inputElement) {
|
|
|
+ inputElement.focus();
|
|
|
+ }
|
|
|
+}, 100);
|
|
|
+
|
|
|
+//搜索
|
|
|
+const searchInfolcd = ref('');
|
|
|
+const tableDatalcd = reactive([])
|
|
|
+//查询按钮
|
|
|
+const onSubmitlcd = () => {
|
|
|
+ _StaGetOrderList()
|
|
|
+};
|
|
|
+//搜索回车
|
|
|
+const Enterkeysearch = (event) => {
|
|
|
+ if (event.key === 'Enter') {
|
|
|
+ _StaGetOrderList();
|
|
|
+ }
|
|
|
+};
|
|
|
+//调用接口
|
|
|
+const _StaGetOrderList = async (node) => {
|
|
|
+ const StaGetOrderListdata = await StaGetOrderList({search:searchInfolcd.value});
|
|
|
+ console.log(StaGetOrderListdata)
|
|
|
+ if (StaGetOrderListdata.data === null) {
|
|
|
+ ElMessage({
|
|
|
+ type: 'warning',
|
|
|
+ message: '未搜索具体查询条件',
|
|
|
+ customClass: 'custom-message', // 添加自定义类名
|
|
|
+ duration: 3000 // 可选:设置消息显示的持续时间(单位:毫秒)
|
|
|
+ });
|
|
|
+ }
|
|
|
+ tableDatalcd.splice(0,tableDatalcd.length,...StaGetOrderListdata.data);//表格数据
|
|
|
+};
|
|
|
+
|
|
|
+// 树形节点属性映射
|
|
|
+const treeDatalcd = reactive([]);
|
|
|
+const defaultProps = {
|
|
|
+ label: '流程单',
|
|
|
+ children: 'children',
|
|
|
+};
|
|
|
+//全局调用工单编号、印件号
|
|
|
+const _Gd_gdbhlcd = ref(null)
|
|
|
+const _Gd_yjnolcd = ref(null)
|
|
|
+const _GetorderDetail = ref(null)
|
|
|
+
|
|
|
+
|
|
|
+/*
|
|
|
+ 弹窗页面
|
|
|
+*/
|
|
|
+const popdialog = ref(false);
|
|
|
+const currentRow = ref('');
|
|
|
+// 获取当前行数据
|
|
|
+const tableRowClicklcd = (row) => {
|
|
|
+ currentRow.value = row; // 保存当前选中行
|
|
|
+};
|
|
|
+
|
|
|
+// 按钮点击逻辑
|
|
|
+const onstatsuclick = async () => {
|
|
|
+ console.log(currentRow)
|
|
|
+ if (!currentRow.value) {
|
|
|
+ ElMessage({
|
|
|
+ type: "warning",
|
|
|
+ message: "请先点击选择一行数据",
|
|
|
+ });
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ await updateCompanyFunclcd(currentRow.value);
|
|
|
+};
|
|
|
+//双击
|
|
|
+const updateCompanyFunclcd = async (row) => {
|
|
|
+ console.log("双击",row)
|
|
|
+ _Gd_gdbhlcd.value = row['Gd_gdbh']
|
|
|
+ _Gd_yjnolcd.value =row['行号']
|
|
|
+
|
|
|
+ const StaGetOrderDetaildata = await StaGetOrderDetail({ gdbh: row['Gd_gdbh'], yjno: row['行号'] });
|
|
|
+ let resultData = StaGetOrderDetaildata.data;
|
|
|
+ // 遍历对象,将 null 值替换为空字符串
|
|
|
+ Object.keys(resultData).forEach((key) => {
|
|
|
+ if (resultData[key] === null) {
|
|
|
+ resultData[key] = '';
|
|
|
+ }
|
|
|
+ });
|
|
|
+ _GetorderDetail.value = resultData;
|
|
|
+ // console.log("_GetorderDetail.value", _GetorderDetail.value);
|
|
|
+ _StaGetList(row)
|
|
|
+}
|
|
|
+
|
|
|
+//左侧树形节点点击事件
|
|
|
+const handleNodeClicklcd = (node) => {
|
|
|
+ _StaProcessList(node['num'])
|
|
|
+ _StaProcessAnomaly()
|
|
|
+};
|
|
|
+
|
|
|
+//获取左侧菜单栏
|
|
|
+const _StaGetList = async (row) => {
|
|
|
+ const StaGetListdata = await StaGetList({gdbh:row['Gd_gdbh'],yjno:row['行号']});
|
|
|
+ console.log(StaGetListdata.msg)
|
|
|
+ if(StaGetListdata.msg === '成功'){
|
|
|
+ treeDatalcd.splice(0, treeDatalcd.length, ...StaGetListdata.data);
|
|
|
+ popdialog.value = true
|
|
|
+ }else{
|
|
|
+ console.log(StaGetListdata.msg)
|
|
|
+ ElMessage({type: 'warning',message: StaGetListdata.msg})
|
|
|
+ }
|
|
|
+};
|
|
|
+
|
|
|
+//工艺及生产班组
|
|
|
+const lcdtableData = reactive([])
|
|
|
+const _StaProcessList = async (node) => {
|
|
|
+ const StaProcessListdata = await StaProcessList({gdbh:_Gd_gdbhlcd.value,yjno:_Gd_yjnolcd.value,num:node});
|
|
|
+ lcdtableData.splice(0,lcdtableData.length,...StaProcessListdata.data);
|
|
|
+};
|
|
|
+
|
|
|
+//制程异常记录
|
|
|
+const zcycjltableData = reactive([])
|
|
|
+const _StaProcessAnomaly = async () => {
|
|
|
+ const StaProcessAnomalydata = await StaProcessAnomaly({gdbh:_Gd_gdbhlcd.value,yjno:_Gd_yjnolcd.value});
|
|
|
+ zcycjltableData.splice(0,zcycjltableData.length,...StaProcessAnomalydata.data);
|
|
|
+};
|
|
|
+
|
|
|
+//退出按钮
|
|
|
+const ontuicclick = async () => {
|
|
|
+ popdialog.value = false
|
|
|
+};
|
|
|
+
|
|
|
+//退出按钮
|
|
|
+const ontuicclicks = async () => {
|
|
|
+ scpconlist.value = false
|
|
|
+};
|
|
|
+
|
|
|
+
|
|
|
/*
|
|
|
特殊机台组员及分配比例
|
|
|
*/
|
|
|
@@ -5877,9 +6316,13 @@ function gytableDatadoubleClick(row, column, event) {
|
|
|
const uid=ref()
|
|
|
const _Gd_gdbh=ref()
|
|
|
function getUid(row, column, event) {
|
|
|
+ console.log(row)
|
|
|
uid.value=row['UniqId']
|
|
|
_Gd_gdbh.value=row['工单编号']
|
|
|
_gdbhlist.value=row['工单编号']
|
|
|
+ lcd_Gd_gdbh.value = row['工单编号']
|
|
|
+ lcd_Gd_yjno.value = row['yjno']
|
|
|
+ console.log("工单编号"+lcd_Gd_gdbh.value)
|
|
|
console.log("UniqId"+uid.value)
|
|
|
}
|
|
|
|
|
|
@@ -7569,7 +8012,11 @@ const updateCompanyFunc = async(row) => {
|
|
|
const cpcode=ref('')
|
|
|
const finishedcode=ref()
|
|
|
const _gdbhlist = ref('')
|
|
|
+const lcd_Gd_gdbh = ref(null)
|
|
|
+const lcd_Gd_yjno = ref(null)
|
|
|
const yjupdateCompanyFunc = async(row) => {
|
|
|
+ lcd_Gd_gdbh.value = row['工单编号|质量信息'].replace(/\|$/, '')
|
|
|
+ lcd_Gd_yjno.value = row['印件号'].slice(0, 2)
|
|
|
const Procedurelist = await Procedure({ Gd_gdbh: row['工单编号|质量信息'].replace(/\|$/, '') })
|
|
|
selectData.value = Procedurelist.data;
|
|
|
cpcode.value=row.产品代号
|
|
|
@@ -7973,4 +8420,18 @@ const gxclhcCellClass = ({row, column, rowIndex, columnIndex}) =>{
|
|
|
:deep(.el-tree-node:focus > .el-tree-node__content){
|
|
|
background: #ff80ff !important;
|
|
|
}
|
|
|
+/*!* 流程单查询按钮颜色控制未完成*/
|
|
|
+:deep(.custom-buttons.el-button--info) {
|
|
|
+ background-color: palegreen !important;
|
|
|
+ color: #155724;
|
|
|
+ font-size: 20px;
|
|
|
+ border-color: #c3e6cb;
|
|
|
+}
|
|
|
+/* 已完成 */
|
|
|
+:deep(.custom-buttons.el-button--danger) {
|
|
|
+ background-color: rgb(236, 135, 135) !important;
|
|
|
+ color: #721c24;
|
|
|
+ font-size: 20px;
|
|
|
+ border-color: #f5c6cb;
|
|
|
+}
|
|
|
</style>
|