|
|
@@ -14,22 +14,25 @@
|
|
|
<el-main>
|
|
|
<!-- 按钮区域 -->
|
|
|
<div class="gva-table-box">
|
|
|
- <div class="gva-btn-list">
|
|
|
- <el-row :span="6">
|
|
|
- <el-input v-model="searchInfo" placeholder="输入工单编号或产品名称" />
|
|
|
- </el-row>
|
|
|
- <el-button type="primary" :icon="Search" @click="onSearch">搜索</el-button>
|
|
|
- <el-button type="primary" @click="onAdd">新增</el-button>
|
|
|
- <el-button type="primary" @click="onDel">删除</el-button>
|
|
|
+ <el-form-item>
|
|
|
+ <el-input v-model="searchInfo" placeholder="输入工单编号或产品名称" style="width: 180px;" />
|
|
|
+ <el-button type="primary" class="search" icon="search" @click="onSearch"></el-button>
|
|
|
+ <el-button type="primary" class="bt" icon="plus" @click="onAdd">新增</el-button>
|
|
|
+ <el-button type="primary" class="bt" icon="delete" @click="onDel">删除</el-button>
|
|
|
<div style="margin-left: auto;">
|
|
|
- <el-button type="primary" :icon="Download" @click="exportExcel">导出到Excel</el-button>
|
|
|
+ <el-button type="primary" class="bt" icon="download" @click="exportExcel">导出到Excel</el-button>
|
|
|
</div>
|
|
|
- </div>
|
|
|
+ </el-form-item>
|
|
|
<!-- 数据展示 -->
|
|
|
- <el-table ref="multipleTable" style="width: 100%" tooltip-effect="dark" :data="tableData" row-key="ID"
|
|
|
- highlight-current-row="true" border @selection-change="handleSelectionChange" @row-click="Click"
|
|
|
+ <el-table ref="multipleTable" style="width: 100%"
|
|
|
+ tooltip-effect="dark" :data="tableData" row-key="ID"
|
|
|
+ highlight-current-row="true" border
|
|
|
+ :row-style="{ height: '0px' }"
|
|
|
+ :header-row-style="{ height: '20px' }"
|
|
|
+ :header-cell-style="{ padding: '0px' }"
|
|
|
+ @selection-change="handleSelectionChange" @row-click="Click"
|
|
|
:show-overflow-tooltip="true" @row-dblclick="doubleClick">
|
|
|
- <el-table-column type="selection" width="55" />
|
|
|
+ <!-- <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"/>
|
|
|
<el-table-column align="left" label="设备名称" prop="sczl_sbmc" width="340"/>
|
|
|
@@ -65,18 +68,18 @@
|
|
|
<el-row :gutter="24">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="机器" prop="id" class="mab">
|
|
|
- <el-input v-model="formData.sczl_jtbh" id="机器" @keydown="ent($event, '日期', '机器', '设备名称')" @blur="getJTsubmit()" style="width: 200px; " placeholder="" />
|
|
|
+ <el-input v-model="formData.sczl_jtbh" id="机器" @keydown="ent($event, '日期', '机器', '组别')" @blur="getJTsubmit()" style="width: 200px; " placeholder="" />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="16">
|
|
|
- <el-input v-model="formData.设备名称" id="设备名称" :readonly=true @keydown="ent($event, '机器', '设备名称', '组别')" style="width: 400px;" placeholder="" />
|
|
|
+ <el-input v-model="formData.设备名称" id="设备名称" :readonly=true style="width: 400px;" placeholder="" />
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
|
|
|
<el-row :gutter="24">
|
|
|
<el-col :span="6">
|
|
|
<el-form-item label="组别" prop="id" class="mab">
|
|
|
- <el-input v-model="formData.sczl_bzdh" id="组别" @keydown="ent($event, '设备名称', '组别', '通电时间')" style="width: 120px;" placeholder="" />
|
|
|
+ <el-input v-model="formData.sczl_bzdh" id="组别" @keydown="ent($event, '机器', '组别', '通电时间')" @blur="getBzsubmit()" style="width: 120px;" placeholder="" />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
@@ -106,19 +109,24 @@
|
|
|
|
|
|
|
|
|
<el-dialog v-model="GetjtbhVisible" title="选择"
|
|
|
- destroy-on-close width="600px" >
|
|
|
- <div class="JKWTree-tree">
|
|
|
- <el-input v-model="searchGetjtbh" placeholder="" style="width: 180px;"></el-input>
|
|
|
+ destroy-on-close width="600px" >
|
|
|
+ <el-input v-model="searchGetjtbh" placeholder="" style="width: 400px;"></el-input>
|
|
|
<el-button type="primary" icon="search" @click="GetjtbhSubmit" class="search"></el-button>
|
|
|
|
|
|
<el-tree :data="GetJTtreeData" :props="defaultProps"
|
|
|
- highlight-current="true"
|
|
|
+ highlight-current="true" style="width: 500px;"
|
|
|
@node-click="GetMachineDedhhandleNodeClick"
|
|
|
@node-dblclick="handleNodeDoubleClick"
|
|
|
- ></el-tree>
|
|
|
- </div>
|
|
|
+ ></el-tree>
|
|
|
+ </el-dialog>
|
|
|
+ <el-dialog v-model="BzVisible" title="选择" destroy-on-close width="200px" >
|
|
|
+ <el-table tooltip-effect="dark" :data="selectDataBz" row-key="ID"
|
|
|
+ highlight-current-row="true" border style="width:100%"
|
|
|
+ @row-dblclick="SelectClickBz"
|
|
|
+ >
|
|
|
+ <el-table-column prop="sczl_bzdh" label="班组" width="150" />
|
|
|
+ </el-table>
|
|
|
</el-dialog>
|
|
|
-
|
|
|
</el-main>
|
|
|
</el-container>
|
|
|
</el-container>
|
|
|
@@ -154,8 +162,6 @@ const treeData = reactive([]);
|
|
|
const getTabdata = async () => {
|
|
|
//接口调用函数
|
|
|
const response = await getproductionaddCount();
|
|
|
- console.log(response)
|
|
|
-
|
|
|
|
|
|
const transformedData = response.data.map(item => ({
|
|
|
label: `${item.date.replace(/-/g, '.')}【单据数: ${item.counts}张】`,
|
|
|
@@ -185,6 +191,17 @@ const formData = ref({
|
|
|
sczl_desc: '',
|
|
|
sys_id:'[1002/郑小丽]',
|
|
|
})
|
|
|
+const initFormData = () => {
|
|
|
+ formData.value = {
|
|
|
+ sczl_rq: '',
|
|
|
+ sczl_jtbh: '',
|
|
|
+ 设备名称: '',
|
|
|
+ sczl_bzdh: '',
|
|
|
+ sczl_设备运行工时: '0.00',
|
|
|
+ sczl_desc: '',
|
|
|
+ sys_id:'[1002/郑小丽]',
|
|
|
+ };
|
|
|
+}
|
|
|
|
|
|
// 验证规则
|
|
|
const rule = reactive({
|
|
|
@@ -266,9 +283,8 @@ const handleSelectionChange = (val) => {
|
|
|
// 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)
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -341,35 +357,76 @@ const rqHandleFocus = () =>{
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-
|
|
|
+const enterDialog1 = (event) => {
|
|
|
+ if (event.keyCode === 13 || event.keyCode === 40) { // Enter 或向下箭头
|
|
|
+ //弹窗提示确认
|
|
|
+ ElMessageBox.confirm('数据存盘?', '提示', {
|
|
|
+ confirmButtonText: '确定',
|
|
|
+ cancelButtonText: '取消',
|
|
|
+ type: 'warning'
|
|
|
+ }).then(() => {
|
|
|
+ enterDialog()
|
|
|
+ })
|
|
|
+ }else if (event.keyCode === 39) { // 向右箭头
|
|
|
+ //弹窗提示确认
|
|
|
+ ElMessageBox.confirm('数据存盘?', '提示', {
|
|
|
+ confirmButtonText: '确定',
|
|
|
+ cancelButtonText: '取消',
|
|
|
+ type: 'warning'
|
|
|
+ }).then(() => {
|
|
|
+ enterDialog()
|
|
|
+ })
|
|
|
+ }
|
|
|
+
|
|
|
+}
|
|
|
// 弹窗确定
|
|
|
const enterDialog = async () => {
|
|
|
-
|
|
|
-
|
|
|
- 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()
|
|
|
- // }
|
|
|
- // })
|
|
|
+ //弹窗提示确认
|
|
|
+ ElMessageBox.confirm('数据存盘?', '提示', {
|
|
|
+ confirmButtonText: '确定',
|
|
|
+ cancelButtonText: '取消',
|
|
|
+ type: 'warning'
|
|
|
+ }).then(() => {
|
|
|
+
|
|
|
+ if(formData.value.sczl_rq==''){
|
|
|
+ ElMessage({
|
|
|
+ type: 'error',
|
|
|
+ message: '请填写日期'
|
|
|
+ });
|
|
|
+ document.getElementById('日期').focus()
|
|
|
+ document.getElementById('日期').select()
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ if(formData.value.sczl_jtbh==''){
|
|
|
+ ElMessage({
|
|
|
+ type: 'error',
|
|
|
+ message: '请选择机器'
|
|
|
+ });
|
|
|
+ document.getElementById('机器').focus()
|
|
|
+ document.getElementById('机器').select()
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ if(formData.value.sczl_bzdh==''){
|
|
|
+ ElMessage({
|
|
|
+ type: 'error',
|
|
|
+ message: '请选择班组'
|
|
|
+ });
|
|
|
+ document.getElementById('组别').focus()
|
|
|
+ document.getElementById('组别').select()
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ if(formData.value.sczl_设备运行工时==''){
|
|
|
+ ElMessage({
|
|
|
+ type: 'error',
|
|
|
+ message: '请填写通电时间'
|
|
|
+ });
|
|
|
+ document.getElementById('通电时间').focus()
|
|
|
+ document.getElementById('通电时间').select()
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ updateDetailData()
|
|
|
+ });
|
|
|
+
|
|
|
}
|
|
|
let table=ref(5);
|
|
|
let lastCellValue=ref()
|
|
|
@@ -377,7 +434,6 @@ let lastCellValue=ref()
|
|
|
function doubleClick(row, column, event) {
|
|
|
type.value = 'update';
|
|
|
lastCellValue= row['UniqId'];
|
|
|
- console.log(lastCellValue)
|
|
|
table.value=lastCellValue
|
|
|
dialogFormVisible.value = true
|
|
|
|
|
|
@@ -386,12 +442,10 @@ function doubleClick(row, column, event) {
|
|
|
// 单击表格操作
|
|
|
function Click(row, column, event) {
|
|
|
lastCellValue= row['UniqId'];
|
|
|
- console.log(lastCellValue)
|
|
|
}
|
|
|
//获取详细信息
|
|
|
const AddgetInfo = async (value) => {
|
|
|
const response = await addgetInfo({UniqId:value});
|
|
|
- console.log(response)
|
|
|
if (response.code === 0) {
|
|
|
formData.value=response.data[0];
|
|
|
}
|
|
|
@@ -466,41 +520,7 @@ const GetjtbhSubmit = () =>{
|
|
|
})
|
|
|
}
|
|
|
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)
|
|
|
-}
|
|
|
+let GetJTtreeData = reactive([]);
|
|
|
const GetMachineDedhhandleNodeClick = (node,check,nodeData) => {
|
|
|
if (!node.children){
|
|
|
// 点击的是子节点
|
|
|
@@ -510,8 +530,32 @@ const GetMachineDedhhandleNodeClick = (node,check,nodeData) => {
|
|
|
formData.value.设备名称 = node.label.substring(splitIndex + 1);
|
|
|
GetjtbhVisible.value=false
|
|
|
}
|
|
|
+}
|
|
|
+
|
|
|
+//班组失去焦点事件
|
|
|
+const getBzsubmit = () => {
|
|
|
+ //弹出选择
|
|
|
+ const data = [{'sczl_bzdh':'A班'},{'sczl_bzdh':'B班'}]
|
|
|
+ selectDataBz.splice(0, selectDataBz.length, ...data)
|
|
|
+ if(!GetjtbhVisible.value){
|
|
|
+ BzVisible.value=true
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
+//班组选择
|
|
|
+const selectDataBz = reactive([])
|
|
|
+const BzVisible = ref(false)
|
|
|
+const SelectClickBz = (row, column, event) => {
|
|
|
+ const {sczl_bzdh } = row
|
|
|
+
|
|
|
+ formData.value.sczl_bzdh=row.sczl_bzdh
|
|
|
+
|
|
|
+ BzVisible.value = false
|
|
|
}
|
|
|
|
|
|
+
|
|
|
// 更新数据
|
|
|
const updateDetailData = async() => {
|
|
|
const restoredData = {
|
|
|
@@ -524,15 +568,10 @@ const updateDetailData = async() => {
|
|
|
sys_id:'[1002/郑小丽]',
|
|
|
}
|
|
|
if(ADD.value=='新增'){
|
|
|
- // console.log('新增')
|
|
|
- console.log('新增')
|
|
|
- console.log(ADD.value)
|
|
|
- console.log(restoredData)
|
|
|
const response = await reportadd(restoredData);
|
|
|
// ADD.value='1'
|
|
|
// console.log(ADD.value)
|
|
|
ADD.value='0'
|
|
|
- console.log(response)
|
|
|
if(response.code==0){
|
|
|
ElMessage({
|
|
|
type: 'success',
|
|
|
@@ -542,9 +581,6 @@ const updateDetailData = async() => {
|
|
|
dialogFormVisible.value = false
|
|
|
}else{
|
|
|
const response = await addedit(restoredData);
|
|
|
- console.log('修改')
|
|
|
- console.log(ADD.value)
|
|
|
- console.log(response)
|
|
|
if(response.code==0){
|
|
|
ElMessage({
|
|
|
type: 'success',
|
|
|
@@ -552,47 +588,52 @@ const updateDetailData = async() => {
|
|
|
})
|
|
|
}
|
|
|
dialogFormVisible.value = false
|
|
|
- // ADD.value='0'
|
|
|
- // console.log(ADD.value)
|
|
|
}
|
|
|
- // 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)
|
|
|
}
|
|
|
//键盘 input框跳转
|
|
|
const ent = (event,id1,id2,id3) => {
|
|
|
|
|
|
if (event.keyCode === 13 || event.keyCode === 40) { // Enter 或向下箭头
|
|
|
- if(id3!=''){
|
|
|
- document.getElementById(id3).focus()
|
|
|
+ if(id3!=''){
|
|
|
+ if(id2=='备注'){
|
|
|
+ document.getElementById(id3).focus()
|
|
|
+ document.getElementById(id3).select();
|
|
|
+ enterDialog1()
|
|
|
+ }else{
|
|
|
+ document.getElementById(id3).focus()
|
|
|
+ document.getElementById(id3).select()
|
|
|
+ }
|
|
|
}
|
|
|
} else if (event.keyCode === 38) { // 向上箭头
|
|
|
if(id1!=''){
|
|
|
document.getElementById(id1).focus()
|
|
|
+ document.getElementById(id1).select()
|
|
|
}
|
|
|
}else if (event.keyCode === 8) { // 删除箭头
|
|
|
if(id1!='' && document.getElementById(id2).value==''){
|
|
|
document.getElementById(id1).focus()
|
|
|
+ document.getElementById(id1).setSelectionRange(0, 0)
|
|
|
}
|
|
|
- console.log(document.getElementById(id2).value)
|
|
|
}else if (event.keyCode === 37) { // 向左箭头
|
|
|
if(id1!='' && document.getElementById(id2).selectionStart==0){
|
|
|
document.getElementById(id1).focus()
|
|
|
+ document.getElementById(id1).select()
|
|
|
}
|
|
|
}else if (event.keyCode === 39) { // 向右箭头
|
|
|
if(id3!='' && document.getElementById(id2).selectionStart == document.getElementById(id2).value.length){
|
|
|
- document.getElementById(id3).focus()
|
|
|
+ if(id2=='备注'){
|
|
|
+ document.getElementById(id3).focus()
|
|
|
+ document.getElementById(id3).select()
|
|
|
+ enterDialog1()
|
|
|
+ }else{
|
|
|
+ document.getElementById(id3).focus()
|
|
|
+ document.getElementById(id3).select()
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
const AddDel = async (value) => {
|
|
|
const response = await adddel({UniqId:'0'});
|
|
|
- console.log(response)
|
|
|
if (response.code === 0) {
|
|
|
ElMessage({
|
|
|
type: 'success',
|
|
|
@@ -604,7 +645,8 @@ const ADD=ref('0')
|
|
|
//新增
|
|
|
const onAdd = () => {
|
|
|
type.value = 'create'
|
|
|
- ADD.value='新增'
|
|
|
+ ADD.value='新增'
|
|
|
+ initFormData()
|
|
|
dialogFormVisible.value = true
|
|
|
// Productionadd()
|
|
|
}
|
|
|
@@ -612,7 +654,6 @@ const onAdd = () => {
|
|
|
const Reportadd = async () => {
|
|
|
const response = await reportadd();
|
|
|
if (response.code === 0) {
|
|
|
- console.log(333)
|
|
|
}
|
|
|
getTableData()
|
|
|
}
|