零件采购

This commit is contained in:
zhy 2025-06-28 22:16:03 +08:00
parent 8dcad5dba7
commit 773bed8910
5 changed files with 26 additions and 23 deletions

View File

@ -39,6 +39,7 @@ import java.time.LocalDate;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
import java.util.Objects;
import static com.chanko.yunxi.mes.framework.common.exception.util.ServiceExceptionUtil.exception; import static com.chanko.yunxi.mes.framework.common.exception.util.ServiceExceptionUtil.exception;
import static com.chanko.yunxi.mes.framework.security.core.util.SecurityFrameworkUtils.getLoginUser; import static com.chanko.yunxi.mes.framework.security.core.util.SecurityFrameworkUtils.getLoginUser;
@ -252,7 +253,7 @@ public class PartPurchaseOrderServiceImpl implements PartPurchaseOrderService{
purchaseOrderMakeDO.setSubmitTime(LocalDateTime.now()); purchaseOrderMakeDO.setSubmitTime(LocalDateTime.now());
purchaseOrderMakeDO.setProjectId(updateReqVO.getProjectId()); purchaseOrderMakeDO.setProjectId(updateReqVO.getProjectId());
PlanDO planDO = planMapper.selectOne("plan_no", updateReqVO.getProjectId()); PlanDO planDO = planMapper.selectOne("plan_no", updateReqVO.getProjectId());
purchaseOrderMakeDO.setProjectPlanId(planDO.getId()); purchaseOrderMakeDO.setProjectPlanId(Objects.nonNull(planDO)?planDO.getId(): null);
purchaseOrderMakeDO.setCustomerId(updateReqVO.getCustomerId()); purchaseOrderMakeDO.setCustomerId(updateReqVO.getCustomerId());
purchaseOrderMakeDO.setBrief(updateReqVO.getBrief()); purchaseOrderMakeDO.setBrief(updateReqVO.getBrief());
purchaseOrderMakeDO.setProjectName(updateReqVO.getProjectName()); purchaseOrderMakeDO.setProjectName(updateReqVO.getProjectName());
@ -281,7 +282,7 @@ public class PartPurchaseOrderServiceImpl implements PartPurchaseOrderService{
purchaseOrderMakeDetailDO.setNameSim(updateReqVO.getProjectSubNameSim()); purchaseOrderMakeDetailDO.setNameSim(updateReqVO.getProjectSubNameSim());
purchaseOrderMakeDetailDO.setOrderStatus(1); purchaseOrderMakeDetailDO.setOrderStatus(1);
PlanSubDO planSubDO1= planSubMapper.selectById(updateReqVO.getProjectPlanSubId()); PlanSubDO planSubDO1= planSubMapper.selectById(updateReqVO.getProjectPlanSubId());
purchaseOrderMakeDetailDO.setProjectSubCode(planSubDO1.getProjectSubCode()); purchaseOrderMakeDetailDO.setProjectSubCode(Objects.nonNull(planSubDO1)?planSubDO1.getProjectSubCode(): null);
purchaseOrderMakeDetailDO.setProcedureId(updateReqVO.getProcedureId()); purchaseOrderMakeDetailDO.setProcedureId(updateReqVO.getProcedureId());
purchaseOrderMakeDetailDO.setDescription(updateReqVO.getDescription()); purchaseOrderMakeDetailDO.setDescription(updateReqVO.getDescription());
purchaseOrderMakeDetailDO.setTheWeight(updateReqVO.getTheWeight()); purchaseOrderMakeDetailDO.setTheWeight(updateReqVO.getTheWeight());

View File

@ -57,6 +57,6 @@ export const getDetail = async (params) => {
} }
// 零件采购单送审生成 // 零件采购单送审生成
export const createPurchaseOrderMakeAndDetail = async (params) => { export const createPurchaseOrderMakeAndDetail = async (data) => {
return await request.post({ url: `/heli/purchase-order-make/createPurchaseOrderMakeAndDetail`, params }) return await request.post({ url: `/heli/purchase-order-make/createPurchaseOrderMakeAndDetail`, data })
} }

View File

@ -62,26 +62,19 @@
<el-table v-loading="loading" :data="list" :show-overflow-tooltip="true" class="hl-table" @selection-change="handleSelectionChange"> <el-table v-loading="loading" :data="list" :show-overflow-tooltip="true" class="hl-table" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" /> <el-table-column type="selection" width="55" />
<el-table-column fixed label="序号" align="center" type="index" width="60" /> <el-table-column fixed label="序号" align="center" type="index" width="60" />
<el-table-column label="工序" align="center" prop="procedureName" min-width="100" > <el-table-column label="工序" align="center" prop="procedureName" min-width="100" fixed>
<template #default="scope"> <template #default="scope">
<el-button text type="primary"> <el-button text type="primary">
{{ scope.row.procedureName }} {{ scope.row.procedureName }}
</el-button> </el-button>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="客户简称" align="center" prop="brief" min-width="180" /> <el-table-column label="客户简称" align="center" prop="brief" min-width="180" fixed />
<el-table-column label="项目名称" align="center" prop="projectName" min-width="180" /> <el-table-column label="项目名称" align="center" prop="projectName" min-width="180" fixed />
<el-table-column label="子项目名称" align="center" prop="projectSubName" min-width="180" /> <el-table-column label="子项目名称" align="center" prop="projectSubName" min-width="180" />
<el-table-column min-width="200px" align="center"> <el-table-column label="泡沫" align="center">
<template #header>泡沫</template> <template #default="row">
<template #default="{ row, $index }"> <el-checkbox v-model="row.isFoam" :true-label="true" :false-label="false" />
<el-form-item :prop="`${$index}.isFoam`" class="mb-0px!">
<el-checkbox-group v-model="row.isFoam">
<el-checkbox v-for="dict in ['是', '否']" :key="dict" :label="dict">
{{ dict }}
</el-checkbox>
</el-checkbox-group>
</el-form-item>
</template> </template>
</el-table-column> </el-table-column>
@ -91,7 +84,7 @@
<el-table-column label="需求数量" align="center" prop="boomAmount" min-width="120" /> <el-table-column label="需求数量" align="center" prop="boomAmount" min-width="120" />
<el-table-column label="单位" align="center" prop="unit" min-width="120" /> <el-table-column label="单位" align="center" prop="unit" min-width="120" />
<el-table-column min-width="200px" align="center"> <el-table-column min-width="200px" align="center">
<template #header>采购数量</template> <template #header><span class="hl-table_header">*</span>采购数量</template>
<template #default="{ row, $index }"> <template #default="{ row, $index }">
<el-form-item :prop="`${$index}.purchaseAmount`" class="mb-0px!" > <el-form-item :prop="`${$index}.purchaseAmount`" class="mb-0px!" >
<el-input-number v-model="row.purchaseAmount" type="number" :precision="0" /> <el-input-number v-model="row.purchaseAmount" type="number" :precision="0" />
@ -107,7 +100,7 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column min-width="200px" align="center"> <el-table-column min-width="200px" align="center">
<template #header>预估总价</template> <template #header><span class="hl-table_header">*</span>预估总价</template>
<template #default="{ row, $index }"> <template #default="{ row, $index }">
<el-form-item :prop="`${$index}.estimatedPrice`" class="mb-0px!" > <el-form-item :prop="`${$index}.estimatedPrice`" class="mb-0px!" >
<el-input-number v-model="row.estimatedPrice" type="number" :precision="2" /> <el-input-number v-model="row.estimatedPrice" type="number" :precision="2" />
@ -139,7 +132,15 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="责任人" align="center" prop="duEmpName" min-width="120" /> <el-table-column label="责任人" align="center" prop="duEmpName" min-width="120" />
<el-table-column label="状态" align="center" prop="mplanStatus" min-width="120" /> <el-table-column label="状态" align="center" prop="mplanStatus" min-width="120" >
<template #default="scope">
{{
getIntDictOptions(DICT_TYPE.MATERIAL_PLAN_BOOM_MPLAN_STATUS).find(
(dict) => dict.value === scope.row.mplanStatus
)?.label || '未知状态'
}}
</template>
</el-table-column>
<el-table-column label="采购单号" align="center" prop="purchaseNo" min-width="120" /> <el-table-column label="采购单号" align="center" prop="purchaseNo" min-width="120" />
</el-table> </el-table>
<!-- 分页 --> <!-- 分页 -->

View File

@ -184,9 +184,8 @@ const reject = async(reason) => {
} }
const cancel = async () => { const cancel = async () => {
router.push({ path: '/purchase/PartPurchaseCheck'}).then(() => { router.push({ path: '/purchase/PartPurchaseCheck' });
window.close(); tagsViewStore.delVisitedView(router.currentRoute.value)
});
} }
const closeForm = async () => { const closeForm = async () => {

View File

@ -175,9 +175,11 @@ const openForm = (type: string, id?: number) => {
break; break;
case 'detail': case 'detail':
router.push({ path: '/purchase/PartPurchaseCheckDetail', query: { id: id , type: type} }) router.push({ path: '/purchase/PartPurchaseCheckDetail', query: { id: id , type: type} })
// window.open(`/purchase/PartPurchaseCheckDetail?id=${id}&type=${encodeURIComponent(type)}`, '_self');
break; break;
case 'check': case 'check':
router.push({ path: '/purchase/PartPurchaseCheckDetail', query: { id: id , type: type} }) router.push({ path: '/purchase/PartPurchaseCheckDetail', query: { id: id , type: type} })
// window.open(`/purchase/PartPurchaseCheckDetail?id=${id}&type=${encodeURIComponent(type)}`, '_self');
break; break;
default: default:
break; break;