零件进程管理页面

This commit is contained in:
z 2025-09-05 16:03:50 +08:00
parent 6100b0109a
commit 966573b942
12 changed files with 281 additions and 13 deletions

View File

@ -1,6 +1,5 @@
package com.chanko.yunxi.mes.module.heli.controller.admin.projectorder.vo; package com.chanko.yunxi.mes.module.heli.controller.admin.projectorder.vo;
import com.alibaba.excel.annotation.ExcelProperty;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.projectorder.ProjectOrderSubDO; import com.chanko.yunxi.mes.module.heli.dal.dataobject.projectorder.ProjectOrderSubDO;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;

View File

@ -77,4 +77,6 @@ public class PartPurchaseOrderPageReqVO extends PageParam {
private Integer goodsType; private Integer goodsType;
@Schema(description = "单据状态,0 待送审1已送审2已审核3已打回 默认是1") @Schema(description = "单据状态,0 待送审1已送审2已审核3已打回 默认是1")
private Integer documentStatus; private Integer documentStatus;
@Schema(description = "图号")
private String blueprintNo;
} }

View File

@ -178,4 +178,10 @@ public class PurchaseOrderNoDetailController {
public CommonResult<Long> getReceivingGoodsMessage() { public CommonResult<Long> getReceivingGoodsMessage() {
return success( purchaseOrderNoDetailService.getReceivingGoodsMessage()); return success( purchaseOrderNoDetailService.getReceivingGoodsMessage());
} }
@PostMapping("/updateFrom")
@Operation(summary = "收货")
@PreAuthorize("@ss.hasPermission('heli:process-bom:create')")
public CommonResult<Boolean> updateFrom(@Valid @RequestBody PurchaseOrderNoDetailDO detailDO) {
return purchaseOrderNoDetailService.updateFrom(detailDO);
}
} }

View File

@ -95,6 +95,7 @@ public interface PurchaseOrderMakeDetailMapper extends BaseMapperX<PurchaseOrder
.leftJoin(AdminUserDO.class,"c", AdminUserDO::getId,PurchaseOrderMakeDetailDO::getDuEmpId) .leftJoin(AdminUserDO.class,"c", AdminUserDO::getId,PurchaseOrderMakeDetailDO::getDuEmpId)
.leftJoin(SupplierDO.class, "d", SupplierDO::getId,PurchaseOrderMakeDetailDO::getSupplierId) .leftJoin(SupplierDO.class, "d", SupplierDO::getId,PurchaseOrderMakeDetailDO::getSupplierId)
.leftJoin(ProcedureDO.class, "e", ProcedureDO::getId, PurchaseOrderMakeDetailDO::getProcedureId) .leftJoin(ProcedureDO.class, "e", ProcedureDO::getId, PurchaseOrderMakeDetailDO::getProcedureId)
.leftJoin(ProcessBomDetailDO.class, "f", ProcessBomDetailDO::getId,PurchaseOrderMakeDetailDO::getBoomDetailId)
.disableLogicDel() .disableLogicDel()
.disableSubLogicDel() .disableSubLogicDel()
.eq(PurchaseOrderMakeDO::getGoodsType, 2) .eq(PurchaseOrderMakeDO::getGoodsType, 2)
@ -106,6 +107,7 @@ public interface PurchaseOrderMakeDetailMapper extends BaseMapperX<PurchaseOrder
.like(StringUtils.isNotBlank(pageReqVO.getProjectName()), PurchaseOrderMakeDO::getProjectName, pageReqVO.getProjectName()) .like(StringUtils.isNotBlank(pageReqVO.getProjectName()), PurchaseOrderMakeDO::getProjectName, pageReqVO.getProjectName())
.like(StringUtils.isNotBlank(pageReqVO.getProjectSubName()), PurchaseOrderMakeDetailDO::getName, pageReqVO.getProjectSubName()) .like(StringUtils.isNotBlank(pageReqVO.getProjectSubName()), PurchaseOrderMakeDetailDO::getName, pageReqVO.getProjectSubName())
.like(StringUtils.isNotBlank(pageReqVO.getMaterialName()), PurchaseOrderMakeDetailDO::getBoomName, pageReqVO.getMaterialName()) .like(StringUtils.isNotBlank(pageReqVO.getMaterialName()), PurchaseOrderMakeDetailDO::getBoomName, pageReqVO.getMaterialName())
.like(ObjectUtil.isNotEmpty(pageReqVO.getBlueprintNo()), ProcessBomDetailDO::getBlueprintNo, pageReqVO.getBlueprintNo())
.eq(Objects.nonNull(pageReqVO.getStatus()), PurchaseOrderMakeDetailDO::getOrderStatus, pageReqVO.getStatus()) .eq(Objects.nonNull(pageReqVO.getStatus()), PurchaseOrderMakeDetailDO::getOrderStatus, pageReqVO.getStatus())
.eq(Objects.nonNull(pageReqVO.getProjectCode()), ProjectOrderDO::getCode, pageReqVO.getProjectCode()) .eq(Objects.nonNull(pageReqVO.getProjectCode()), ProjectOrderDO::getCode, pageReqVO.getProjectCode())
.like(Objects.nonNull(pageReqVO.getOwnerName()), AdminUserDO::getNickname, pageReqVO.getOwnerName()) .like(Objects.nonNull(pageReqVO.getOwnerName()), AdminUserDO::getNickname, pageReqVO.getOwnerName())

View File

@ -229,6 +229,13 @@ public class ProcessDesignServiceImpl implements ProcessDesignService {
} }
updateObj.setReReason(null); updateObj.setReReason(null);
processDesignMapper.updateById(updateObj); processDesignMapper.updateById(updateObj);
ProcessDesignDO processDesignDO = processDesignMapper.selectById(updateReqVO.getId());
LambdaUpdateWrapper<PlanSubDetailDO> wrapper = new LambdaUpdateWrapper<>();
wrapper.eq(PlanSubDetailDO::getProjectId, processDesignDO.getProjectId());
wrapper.eq(PlanSubDetailDO::getProjectSubId, processDesignDO.getProjectSubId());
wrapper.eq(PlanSubDetailDO::getSubType, processDesignDO.getProcessDesignType());
wrapper.set(PlanSubDetailDO::getIsOverProcess, 2);
planSubDetailMapper.update(wrapper);
// 更新子表 // 更新子表
updateProcessDesignProgressList(updateReqVO.getId(), updateReqVO.getProcessDesignProgressList()); updateProcessDesignProgressList(updateReqVO.getId(), updateReqVO.getProcessDesignProgressList());
@ -266,7 +273,7 @@ public class ProcessDesignServiceImpl implements ProcessDesignService {
wrapper.eq(PlanSubDetailDO::getProjectId, processDesignDO.getProjectId()); wrapper.eq(PlanSubDetailDO::getProjectId, processDesignDO.getProjectId());
wrapper.eq(PlanSubDetailDO::getProjectSubId, processDesignDO.getProjectSubId()); wrapper.eq(PlanSubDetailDO::getProjectSubId, processDesignDO.getProjectSubId());
wrapper.eq(PlanSubDetailDO::getSubType, processDesignDO.getProcessDesignType()); wrapper.eq(PlanSubDetailDO::getSubType, processDesignDO.getProcessDesignType());
wrapper.set(PlanSubDetailDO::getIsOverProcess, 1); wrapper.set(PlanSubDetailDO::getIsOverProcess, 2);
planSubDetailMapper.update(wrapper); planSubDetailMapper.update(wrapper);
return processDesignMapper.over(id); return processDesignMapper.over(id);
} }
@ -587,7 +594,7 @@ public class ProcessDesignServiceImpl implements ProcessDesignService {
wrapper.eq(PlanSubDetailDO::getProjectId, processDesignDO.getProjectId()); wrapper.eq(PlanSubDetailDO::getProjectId, processDesignDO.getProjectId());
wrapper.eq(PlanSubDetailDO::getProjectSubId, processDesignDO.getProjectSubId()); wrapper.eq(PlanSubDetailDO::getProjectSubId, processDesignDO.getProjectSubId());
wrapper.eq(PlanSubDetailDO::getSubType, processDesignDO.getProcessDesignType()); wrapper.eq(PlanSubDetailDO::getSubType, processDesignDO.getProcessDesignType());
wrapper.set(PlanSubDetailDO::getIsOverProcess, 0); wrapper.set(PlanSubDetailDO::getIsOverProcess, 2);
planSubDetailMapper.update(wrapper); planSubDetailMapper.update(wrapper);
} }

View File

@ -70,4 +70,6 @@ public interface PurchaseOrderNoDetailService {
PageResult<PurchaseOrderNoDetailDO> getReceivingGoods(PurchaseOrderNoDetailPageReqVO pageReqVO); PageResult<PurchaseOrderNoDetailDO> getReceivingGoods(PurchaseOrderNoDetailPageReqVO pageReqVO);
Long getReceivingGoodsMessage(); Long getReceivingGoodsMessage();
CommonResult<Boolean> updateFrom(PurchaseOrderNoDetailDO detailDO);
} }

View File

@ -2,6 +2,7 @@ package com.chanko.yunxi.mes.module.heli.service.purchaseordernodetail;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.chanko.yunxi.mes.framework.common.exception.ErrorCode; import com.chanko.yunxi.mes.framework.common.exception.ErrorCode;
import com.chanko.yunxi.mes.framework.common.pojo.CommonResult; import com.chanko.yunxi.mes.framework.common.pojo.CommonResult;
import com.chanko.yunxi.mes.framework.security.core.util.SecurityFrameworkUtils; import com.chanko.yunxi.mes.framework.security.core.util.SecurityFrameworkUtils;
@ -550,4 +551,40 @@ public class PurchaseOrderNoDetailServiceImpl implements PurchaseOrderNoDetailSe
public Long getReceivingGoodsMessage() { public Long getReceivingGoodsMessage() {
return purchaseOrderNoDetailMapper.getReceivingGoodsMessage(); return purchaseOrderNoDetailMapper.getReceivingGoodsMessage();
} }
@Override
public CommonResult<Boolean> updateFrom(PurchaseOrderNoDetailDO detailDO) {
PurchaseOrderNoDetailDO purchaseOrderNoDetailDO = purchaseOrderNoDetailMapper.selectById(detailDO.getId());
if (ObjectUtil.isNotEmpty(purchaseOrderNoDetailDO)){
purchaseOrderNoDetailDO.setEstimatedPrice(detailDO.getEstimatedPrice());
purchaseOrderNoDetailMapper.updateById(purchaseOrderNoDetailDO);
LambdaQueryWrapper<StorageInDetailDO> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(StorageInDetailDO::getPurchaseOrderNoDetailId,detailDO.getId());
List<StorageInDetailDO> list = storageInDetailMapper.selectList(wrapper);
BigDecimal result = BigDecimal.ZERO;
BigDecimal estimatedPrice = detailDO.getEstimatedPrice();
BigDecimal purchaseAmount = detailDO.getPurchaseAmount();
// 检查两个值是否为null或0
if (estimatedPrice != null &&
purchaseAmount != null &&
purchaseAmount.compareTo(BigDecimal.ZERO) != 0) {
// 当两个值非空且除数非零时才进行计算
result = estimatedPrice.divide(purchaseAmount, 10, RoundingMode.HALF_UP);
}
if (ObjectUtil.isNotEmpty(list)){
for (StorageInDetailDO storageInDetailDO : list) {
if (result.compareTo(BigDecimal.ZERO)==0){
storageInDetailDO.setEstimatedPrice(BigDecimal.ZERO);
}else {
storageInDetailDO.setEstimatedPrice(storageInDetailDO.getStorageAmount().multiply(result).setScale(1, RoundingMode.HALF_UP));
}
}
storageInDetailMapper.insertOrUpdateBatch( list);
}
}
return CommonResult.success(true);
}
} }

View File

@ -88,3 +88,6 @@ export const getOutsourcingExpenses = async (params) => {
export const exportOutsourcing = async (params) => { export const exportOutsourcing = async (params) => {
return await request.download({ url: `/heli/purchase-order-no-detail/exportOutsourcing`, params }) return await request.download({ url: `/heli/purchase-order-no-detail/exportOutsourcing`, params })
} }
export const updateFrom= async (data) => {
return await request.post({ url: `/heli/purchase-order-no-detail/updateFrom`, data })
}

View File

@ -12,8 +12,11 @@
<el-form-item label="子项目名称" prop="projectSubName"> <el-form-item label="子项目名称" prop="projectSubName">
<el-input v-model="queryParams.projectSubName" placeholder="请输入子项目名称" clearable @keyup.enter="handleQuery" class="!w-240px" /> <el-input v-model="queryParams.projectSubName" placeholder="请输入子项目名称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item> </el-form-item>
<el-form-item label="零件名称" prop="materialName"> <!-- <el-form-item label="零件名称" prop="materialName">-->
<el-input v-model="queryParams.materialName" placeholder="请输入零件名称" clearable @keyup.enter="handleQuery" class="!w-240px" /> <!-- <el-input v-model="queryParams.materialName" placeholder="请输入零件名称" clearable @keyup.enter="handleQuery" class="!w-240px" />-->
<!-- </el-form-item>-->
<el-form-item label="图号" prop="blueprintNo">
<el-input v-model="queryParams.blueprintNo" placeholder="请输入图号" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item> </el-form-item>
<el-form-item label="项目编码" prop="projectCode"> <el-form-item label="项目编码" prop="projectCode">
<el-input v-model="queryParams.projectCode" placeholder="请输入项目编号" clearable @keyup.enter="handleQuery" class="!w-240px" /> <el-input v-model="queryParams.projectCode" placeholder="请输入项目编号" clearable @keyup.enter="handleQuery" class="!w-240px" />
@ -140,6 +143,7 @@ const queryParams = reactive({
materialName:undefined, materialName:undefined,
projectMaterialPlanNo:undefined, projectMaterialPlanNo:undefined,
supplierName:undefined, supplierName:undefined,
blueprintNo:undefined
}) })
const queryFormRef = ref() // const queryFormRef = ref() //
const exportLoading = ref(false) // const exportLoading = ref(false) //

View File

@ -121,7 +121,7 @@
<td> 设备型号 </td> <td> 设备型号 </td>
<td> 数量 </td> <td> 数量 </td>
<td> 主要材料 </td> <td> 主要材料 </td>
<td style="width:110px"> 毛坯日期 </td> <td style="width:120px"> 毛坯日期 </td>
<td> 2D/日期 </td> <td> 2D/日期 </td>
<td> 3D/日期 </td> <td> 3D/日期 </td>
</tr> </tr>
@ -412,7 +412,7 @@ style="
</tr> </tr>
</tbody> </tbody>
<tbody> <tbody>
<tr v-for="item in formData.projectOrderSubs.length" :key="item"> <tr v-for="item in num" :key="item">
<td> {{item+(formData.projectOrderSubs.length)}}</td> <td> {{item+(formData.projectOrderSubs.length)}}</td>
<td colspan="3">&nbsp; </td> <td colspan="3">&nbsp; </td>
<td> &nbsp; </td> <td> &nbsp; </td>
@ -504,6 +504,7 @@ import { getOperateLogPage } from '@/api/system/operatelog'
import urlimg from '@/assets/imgs/exlogo.png' import urlimg from '@/assets/imgs/exlogo.png'
const logoDataUrl = ref('') // LogoBase64URL const logoDataUrl = ref('') // LogoBase64URL
const dialogVisible = ref(false) // const dialogVisible = ref(false) //
const num = ref(0) // LogoBase64URL
const onPrint = () => { const onPrint = () => {
// dom // dom
@ -538,7 +539,7 @@ const onPrint = () => {
@page { @page {
size: A4; size: A4;
margin:1cm; margin:0.8cm 1cm 1.4cm 1cm;;
} }
@media print { @media print {
.page { .page {
@ -552,6 +553,24 @@ const onPrint = () => {
page-break-after: always; page-break-after: always;
} }
} }
/* 注册页脚为运行元素 */
.footer {
position: running(footer);
text-align: right;
font-size: 10px;
color: #666;
border-top: 1px dashed #ccc;
padding-top: 2px;
}
/* 定义页脚位置 */
@page {
@bottom-right {
content: counter(page) "/" counter(pages);
font-family: Arial; /* 防止继承奇怪字体 */
}
}
table { table {
width: 100%; /* 让表格宽度100%占满其父元素宽度 */ width: 100%; /* 让表格宽度100%占满其父元素宽度 */
height: auto; /* 高度根据内容自适应 */ height: auto; /* 高度根据内容自适应 */
@ -587,6 +606,7 @@ const onPrint = () => {
</style> </style>
<div> <div>
${printNode.innerHTML} ${printNode.innerHTML}
</div>`) </div>`)
doc.close() doc.close()
// //
@ -596,12 +616,147 @@ const onPrint = () => {
document.body.removeChild(newIframe) // document.body.removeChild(newIframe) //
dialogVisible.value = false dialogVisible.value = false
}, 100) }, 100)
} }
// const onPrint = () => {
// const printNode = document.querySelector('.print-wrap');
// if (!printNode) return;
//
// // DOM
// const printClone = printNode.cloneNode(true) as HTMLElement;
// const pages = printClone.querySelectorAll('.page');
// const totalPages = pages.length;
// console.log(totalPages)
// //
// let currentPage = 1;
// pages.forEach(page => {
// const pageNum = document.createElement('div');
// pageNum.className = 'page-footer';
// pageNum.innerHTML = `<span class="page-number">${currentPage}/${totalPages}</span>`;
//
// //
// const footer = document.createElement('div');
// footer.className = 'print-footer';
// footer.appendChild(pageNum);
// page.appendChild(footer);
// currentPage++;
// });
// // iframe
// const newIframe = document.createElement('iframe');
// Object.assign(newIframe.style, {
// width: '0px',
// height: '0px',
// position: 'absolute',
// left: '-9999px',
// top: '-9999px'
// });
// document.body.appendChild(newIframe);
//
// const doc = newIframe.contentWindow!.document!;
// doc.write(`
// <style>
// /* */
// .page {
// width: 21cm;
// min-height: 29.7cm;
// padding: 10mm;
// margin: 20px auto;
// border: 1px #d3d3d3 solid;
// border-radius: 5px;
// background: white;
// box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
// position: relative;
// font-size: 12px !important;
// }
//
// @page {
// size: A4;
// margin: 1cm;
// }
//
// @media print {
// .page {
// margin: 10mm;
// border: initial;
// border-radius: initial;
// width: initial;
// min-height: initial;
// box-shadow: initial;
// background: initial;
// page-break-after: always;
// }
// }
//
// /* */
// .print-footer {
// position: absolute;
// bottom: 5mm;
// right: 5mm;
// font-size: 10px;
// color: #666;
// }
//
// .page-number {
// padding: 2px 6px;
// border: 1px solid #ddd;
// border-radius: 3px;
// background: #f8f8f8;
// }
// table {
// width: 100%; /* 100% */
// height: auto; /* */
// font-size: 12px;
// text-align: center;
// border-collapse: collapse;
// margin-top: 5mm; /* */
// tr{
// td {
// padding: 5px 0;
// border: 1px solid #333;
// }
// }
// }
// .masterClass {
// height: 15px;
// }
// .xh {
// width: 50px !important;
// }
// .xh {
// height: 20px !important;
// }
// .checkbox {
// border: 2px solid #999;
// width: 10px;
// height: 10px;
// display: flex;
// justify-content: center;
// align-items: center;
// margin-left:10px ;
// }
//
// </style>
// <div>${printClone.innerHTML}</div>
// `);
// doc.close();
//
// //
// setTimeout(() => {
// newIframe.contentWindow!.focus();
// newIframe.contentWindow!.print();
//
// //
// document.body.removeChild(newIframe);
// dialogVisible.value = false;
//
// //
// // printNode.innerHTML = originalContent;
// }, 300);
// };
const outopen = () => { const outopen = () => {
dialogVisible.value = false dialogVisible.value = false
} }
const formData = ref({ const formData = ref({
id: undefined, id: undefined,
code: undefined, code: undefined,
@ -725,6 +880,20 @@ const open = async (id: number) => {
formData.value.auditTime = auditLog.startTime formData.value.auditTime = auditLog.startTime
formData.value.auditUserName = auditLog.userNickname formData.value.auditUserName = auditLog.userNickname
} }
if (formData.value.projectOrderSubs.length>6){
if (formData.value.projectOrderSubs.length>33){
var number = formData.value.projectOrderSubs.length-33;
const remainder = number % 29;
const emptyRows = remainder === 0 ? 0 : 29 - remainder;
num.value=emptyRows
console.log(num.value)
}else {
var number = formData.value.projectOrderSubs.length-6;
const remainder = number % 27;
const emptyRows = remainder === 0 ? 0 : 27 - remainder;
num.value=emptyRows
}
}
} }
defineExpose({ open }) // open defineExpose({ open }) // open
@ -859,6 +1028,22 @@ const resetForm = () => {
page-break-after: always; page-break-after: always;
} }
} }
.footer {
position: running(footer);
text-align: right;
font-size: 10px;
color: #666;
border-top: 1px dashed #ccc;
padding-top: 5px;
}
/* 定义页脚位置 */
@page {
@bottom-right {
content: counter(page) "/" counter(pages);
font-family: Arial; /* 防止继承奇怪字体 */
}
}
table { table {
width: 100%; /* 让表格宽度100%占满其父元素宽度 */ width: 100%; /* 让表格宽度100%占满其父元素宽度 */
height: auto; /* 高度根据内容自适应 */ height: auto; /* 高度根据内容自适应 */

View File

@ -76,7 +76,16 @@
<el-table-column prop="arriveTime" min-width="150" label="预计到货日期" align="center" :formatter="dateFormatter1" /> <el-table-column prop="arriveTime" min-width="150" label="预计到货日期" align="center" :formatter="dateFormatter1" />
<el-table-column prop="description" min-width="150" label="技术要求" align="center"/> <el-table-column prop="description" min-width="150" label="技术要求" align="center"/>
<el-table-column prop="theWeight" min-width="100" label="理论重量" align="center"/> <el-table-column prop="theWeight" min-width="100" label="理论重量" align="center"/>
<el-table-column label="操作" align="center" fixed="right" min-width="200">
<template #header>
<span style="margin-right: 30%">操作</span>
</template>
<template #default="scope">
<el-button link type="primary" @click="updateFrom(scope.row)" v-if="scope.row.receivingStatus==3">
总价修改
</el-button>
</template>
</el-table-column>
</el-table> </el-table>
</el-form> </el-form>
<!-- <Pagination :total="total" v-model:page="queryParams.pageNo" v-model:limit="queryParams.pageSize"--> <!-- <Pagination :total="total" v-model:page="queryParams.pageNo" v-model:limit="queryParams.pageSize"-->
@ -217,6 +226,7 @@ const tagsViewStore = useTagsViewStore()
import * as PurchaseOrderNoApi from '@/api/heli/purchaseorderno' import * as PurchaseOrderNoApi from '@/api/heli/purchaseorderno'
import * as PurchaseOrderNoDetailApi from '@/api/heli/purchaseordernodetail' import * as PurchaseOrderNoDetailApi from '@/api/heli/purchaseordernodetail'
import {ref} from "vue"; import {ref} from "vue";
import {update} from "lodash-es";
const dialogVisible = ref(false) // const dialogVisible = ref(false) //
const formLoading = ref(false) // 12 const formLoading = ref(false) // 12
@ -300,6 +310,17 @@ const isPrint = async () => {
} }
} }
const updateFrom = async (row) => {
console.log(row)
await PurchaseOrderNoDetailApi.updateFrom(row)
loading.value = true;
message.success("修改成功");
getList(); //
emit('success');
}
function doPrint() { function doPrint() {

View File

@ -12,7 +12,7 @@
<el-form-item label="项目名称" prop="projectName"> <el-form-item label="项目名称" prop="projectName">
<el-input <el-input
v-model="queryParams.projectName" v-model="queryParams.projectName"
placeholder="请输入项目简码" placeholder="请输入项目名称"
clearable clearable
@keyup.enter="handleQuery" @keyup.enter="handleQuery"
class="!w-240px" class="!w-240px"
@ -49,7 +49,7 @@
<el-form-item label="零件号" prop="blueprintNo"> <el-form-item label="零件号" prop="blueprintNo">
<el-input <el-input
v-model="queryParams.blueprintNo" v-model="queryParams.blueprintNo"
placeholder="请输入项目编号" placeholder="请输入零件号"
clearable clearable
@keyup.enter="handleQuery" @keyup.enter="handleQuery"
class="!w-240px" class="!w-240px"
@ -59,7 +59,7 @@
<el-form-item label="工序" prop="procdureName"> <el-form-item label="工序" prop="procdureName">
<el-input <el-input
v-model="queryParams.procdureName" v-model="queryParams.procdureName"
placeholder="请输入项目编号" placeholder="请输入工序"
clearable clearable
@keyup.enter="handleQuery" @keyup.enter="handleQuery"
class="!w-240px" class="!w-240px"