|
|
|
@ -349,7 +349,19 @@
|
|
|
|
|
</el-dialog>
|
|
|
|
|
|
|
|
|
|
<!-- 批量添加生产工单信息对话框 -->
|
|
|
|
|
<el-dialog :title='batchDialog.title' v-model='batchDialog.visible' width='1000px' append-to-body>
|
|
|
|
|
<el-dialog :title='vulBatchDialog.title' v-model='vulBatchDialog.visible' width='1200px' append-to-body>
|
|
|
|
|
<el-container style='height: 500px; border: 1px solid #eee'>
|
|
|
|
|
<div style='width: 400px; height: 100%; overflow: auto'>
|
|
|
|
|
<el-table v-loading='loading' :data='prodBaseMachineInfoList'
|
|
|
|
|
@selection-change='handleSelectionMachineChange'>
|
|
|
|
|
<el-table-column type='selection' width='55' align='center' />
|
|
|
|
|
<el-table-column label='主键标识' align='center' prop='machineId' v-if='false' />
|
|
|
|
|
<el-table-column label='机台编号' align='center' prop='machineCode' />
|
|
|
|
|
<el-table-column label='机台名称' align='center' prop='machineName' />
|
|
|
|
|
</el-table>
|
|
|
|
|
</div>
|
|
|
|
|
<el-container>
|
|
|
|
|
<el-header style='text-align: right; font-size: 12px'>
|
|
|
|
|
<el-form ref='planInfoFormRef' :model='form' :rules='rules' label-width='100px'>
|
|
|
|
|
<el-row :gutter='10' class='mb8'>
|
|
|
|
|
<el-col :span='12'>
|
|
|
|
@ -365,7 +377,8 @@
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span='12'>
|
|
|
|
|
<el-form-item label='物料BOM' prop='materialBoMName'>
|
|
|
|
|
<el-input v-model='form.materialBoMName' placeholder='请点击检索物料BOM' @click='handleMaterialBomAdd' readonly>
|
|
|
|
|
<el-input v-model='form.materialBoMName' placeholder='请点击检索物料BOM' @click='handleMaterialBomAdd'
|
|
|
|
|
readonly>
|
|
|
|
|
<template #append>
|
|
|
|
|
<el-icon class='el-input__icon'>
|
|
|
|
|
<search />
|
|
|
|
@ -375,20 +388,20 @@
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
<el-row :gutter='10' class='mb8'>
|
|
|
|
|
<el-col :span='12'>
|
|
|
|
|
<el-form-item label='工序名称' prop='processId'>
|
|
|
|
|
<el-select v-model='form.processId' placeholder='请选择工序'>
|
|
|
|
|
<el-option
|
|
|
|
|
v-for='item in processList'
|
|
|
|
|
:key='item.processId'
|
|
|
|
|
:label='item.processName'
|
|
|
|
|
:value='item.processId'
|
|
|
|
|
/>
|
|
|
|
|
</el-select>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
<el-col :span='12'>
|
|
|
|
|
<!-- <el-row :gutter='10' class='mb8'>-->
|
|
|
|
|
<!-- <el-col :span='12'>-->
|
|
|
|
|
<!-- <el-form-item label='工序名称' prop='processId'>-->
|
|
|
|
|
<!-- <el-select v-model='form.processId' placeholder='请选择工序'>-->
|
|
|
|
|
<!-- <el-option-->
|
|
|
|
|
<!-- v-for='item in processList'-->
|
|
|
|
|
<!-- :key='item.processId'-->
|
|
|
|
|
<!-- :label='item.processName'-->
|
|
|
|
|
<!-- :value='item.processId'-->
|
|
|
|
|
<!-- />-->
|
|
|
|
|
<!-- </el-select>-->
|
|
|
|
|
<!-- </el-form-item>-->
|
|
|
|
|
<!-- </el-col>-->
|
|
|
|
|
<!-- <el-col :span='12'>-->
|
|
|
|
|
<!-- <el-form-item label='下达类型' prop='releaseType'>-->
|
|
|
|
|
<!-- <el-radio-group v-model='form.releaseType' :disabled='true'>-->
|
|
|
|
|
<!-- <el-radio-->
|
|
|
|
@ -399,24 +412,24 @@
|
|
|
|
|
<!-- </el-radio>-->
|
|
|
|
|
<!-- </el-radio-group>-->
|
|
|
|
|
<!-- </el-form-item>-->
|
|
|
|
|
<el-form-item label='机台名称' prop='releaseId'>
|
|
|
|
|
<el-select v-model='form.releaseId' placeholder='请选择机台名称'>
|
|
|
|
|
<el-option
|
|
|
|
|
v-for='item in releaseList'
|
|
|
|
|
:key='item.machineId'
|
|
|
|
|
:label='item.machineName'
|
|
|
|
|
:value='item.machineId'
|
|
|
|
|
/>
|
|
|
|
|
</el-select>
|
|
|
|
|
</el-form-item>
|
|
|
|
|
</el-col>
|
|
|
|
|
</el-row>
|
|
|
|
|
<!-- <el-form-item label='机台名称' prop='releaseId'>-->
|
|
|
|
|
<!-- <el-select v-model='form.releaseId' placeholder='请选择机台名称'>-->
|
|
|
|
|
<!-- <el-option-->
|
|
|
|
|
<!-- v-for='item in releaseList'-->
|
|
|
|
|
<!-- :key='item.machineId'-->
|
|
|
|
|
<!-- :label='item.machineName'-->
|
|
|
|
|
<!-- :value='item.machineId'-->
|
|
|
|
|
<!-- />-->
|
|
|
|
|
<!-- </el-select>-->
|
|
|
|
|
<!-- </el-form-item>-->
|
|
|
|
|
<!-- </el-col>-->
|
|
|
|
|
<!-- </el-row>-->
|
|
|
|
|
<el-row :gutter='10' class='mb8'>
|
|
|
|
|
<el-col :span='12'>
|
|
|
|
|
<el-form-item label='计划开始时间' prop='planBeginTime'>
|
|
|
|
|
<el-date-picker clearable
|
|
|
|
|
v-model='form.planBeginTime'
|
|
|
|
|
type='datetime'
|
|
|
|
|
type='date'
|
|
|
|
|
value-format='YYYY-MM-DD HH:mm:ss'
|
|
|
|
|
placeholder='请选择计划开始时间'>
|
|
|
|
|
</el-date-picker>
|
|
|
|
@ -426,7 +439,7 @@
|
|
|
|
|
<el-form-item label='计划结束时间' prop='planEndTime'>
|
|
|
|
|
<el-date-picker clearable
|
|
|
|
|
v-model='form.planEndTime'
|
|
|
|
|
type='datetime'
|
|
|
|
|
type='date'
|
|
|
|
|
value-format='YYYY-MM-DD HH:mm:ss'
|
|
|
|
|
placeholder='请选择计划结束时间'>
|
|
|
|
|
</el-date-picker>
|
|
|
|
@ -497,6 +510,10 @@
|
|
|
|
|
<!-- <el-input v-model='form.remark' placeholder='请输入备注' />-->
|
|
|
|
|
<!-- </el-form-item>-->
|
|
|
|
|
</el-form>
|
|
|
|
|
</el-header>
|
|
|
|
|
</el-container>
|
|
|
|
|
</el-container>
|
|
|
|
|
|
|
|
|
|
<template #footer>
|
|
|
|
|
<div class='dialog-footer'>
|
|
|
|
|
<el-button :loading='buttonLoading' type='primary' @click='submitForm'>确 定</el-button>
|
|
|
|
@ -525,6 +542,8 @@ import MaterialSelect from '@/views/mes/baseMaterialInfo/addMaterial.vue';
|
|
|
|
|
import { getProcessInfoList } from '@/api/mes/baseProcessInfo';
|
|
|
|
|
import { getStationInfoList } from '@/api/mes/baseStationInfo';
|
|
|
|
|
import { getProdBaseMachineInfoList } from '@/api/mes/prodBaseMachineInfo';
|
|
|
|
|
import { ProdBaseMachineInfoVO } from '@/api/mes/prodBaseMachineInfo/types';
|
|
|
|
|
import { OssVO } from '@/api/system/oss/types';
|
|
|
|
|
|
|
|
|
|
const { proxy } = getCurrentInstance() as ComponentInternalInstance;
|
|
|
|
|
const {
|
|
|
|
@ -553,7 +572,7 @@ const dialog = reactive<DialogOption>({
|
|
|
|
|
title: ''
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
const batchDialog = reactive<DialogOption>({
|
|
|
|
|
const vulBatchDialog = reactive<DialogOption>({
|
|
|
|
|
visible: false,
|
|
|
|
|
title: ''
|
|
|
|
|
});
|
|
|
|
@ -569,6 +588,10 @@ const materialSelectRef = ref();
|
|
|
|
|
|
|
|
|
|
const workshopId = ref();
|
|
|
|
|
|
|
|
|
|
const prodBaseMachineInfoList = ref<ProdBaseMachineInfoVO[]>([]);
|
|
|
|
|
|
|
|
|
|
const machineIds = ref<Array<string | number>>([]);
|
|
|
|
|
|
|
|
|
|
/*获取班次下拉框*/
|
|
|
|
|
const getShiftSelect = async () => {
|
|
|
|
|
let res = await getBaseShiftInfoList(null);
|
|
|
|
@ -591,6 +614,7 @@ const getProcessSelect = async () => {
|
|
|
|
|
const getReleaseSelect = async () => {
|
|
|
|
|
let res = await getProdBaseMachineInfoList({ processId: form.value.processId });
|
|
|
|
|
releaseList.value = res.data;
|
|
|
|
|
prodBaseMachineInfoList.value = res.data;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
// 列显隐信息
|
|
|
|
@ -732,10 +756,10 @@ const getWorkshopId = async () => {
|
|
|
|
|
const router = useRouter();
|
|
|
|
|
workshopId.value = router.currentRoute._rawValue.query && router.currentRoute._rawValue.query.workshopId;
|
|
|
|
|
queryParams.value.workshopId = workshopId.value;
|
|
|
|
|
console.log("----")
|
|
|
|
|
console.log('----');
|
|
|
|
|
console.log(queryParams);
|
|
|
|
|
console.log(workshopId.value);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
/** 查询生产计划信息列表 */
|
|
|
|
|
const getList = async () => {
|
|
|
|
@ -750,7 +774,7 @@ const getList = async () => {
|
|
|
|
|
const cancel = () => {
|
|
|
|
|
reset();
|
|
|
|
|
dialog.visible = false;
|
|
|
|
|
batchDialog.visible = false;
|
|
|
|
|
vulBatchDialog.visible = false;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
/** 表单重置 */
|
|
|
|
@ -779,6 +803,11 @@ const handleSelectionChange = (selection: PlanInfoVO[]) => {
|
|
|
|
|
multiple.value = !selection.length;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
/** 选择机台条数 */
|
|
|
|
|
const handleSelectionMachineChange = (selection: ProdBaseMachineInfoVO[]) => {
|
|
|
|
|
machineIds.value = selection.map(item => item.machineId);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
/** 新增按钮操作 */
|
|
|
|
|
const handleAdd = () => {
|
|
|
|
|
reset();
|
|
|
|
@ -789,8 +818,8 @@ const handleAdd = () => {
|
|
|
|
|
/** 新增按钮操作 */
|
|
|
|
|
const handleBatchAdd = () => {
|
|
|
|
|
reset();
|
|
|
|
|
batchDialog.visible = true;
|
|
|
|
|
batchDialog.title = '批量添加生产计划信息';
|
|
|
|
|
vulBatchDialog.visible = true;
|
|
|
|
|
vulBatchDialog.title = '批量添加生产计划信息';
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
/** 修改按钮操作 */
|
|
|
|
@ -812,15 +841,25 @@ const submitForm = () => {
|
|
|
|
|
form.value.finishFlag = form.value.finishFlag.join(',');
|
|
|
|
|
if (form.value.planId) {
|
|
|
|
|
await updatePlanInfo(form.value).finally(() => buttonLoading.value = false);
|
|
|
|
|
} else if (batchDialog.visible) {
|
|
|
|
|
} else if (vulBatchDialog.visible) {
|
|
|
|
|
//硫化新增
|
|
|
|
|
let assemblyData = batchesAddAssemblyData();
|
|
|
|
|
await orderAddProductPlanList({ mesProductPlanList: assemblyData, productOrderId: 0 }).finally(() => buttonLoading.value = false);
|
|
|
|
|
if (machineIds.value.length == 0) {
|
|
|
|
|
proxy?.$modal.msgWarning('请选择机台!');
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
await orderAddProductPlanList({
|
|
|
|
|
mesProductPlanList: assemblyData,
|
|
|
|
|
productOrderId: 0,
|
|
|
|
|
machineIds: machineIds.value
|
|
|
|
|
}).finally(() => buttonLoading.value = false);
|
|
|
|
|
machineIds.value = [];
|
|
|
|
|
} else {
|
|
|
|
|
await addPlanInfo(form.value).finally(() => buttonLoading.value = false);
|
|
|
|
|
}
|
|
|
|
|
proxy?.$modal.msgSuccess('操作成功');
|
|
|
|
|
dialog.visible = false;
|
|
|
|
|
batchDialog.visible = false;
|
|
|
|
|
vulBatchDialog.visible = false;
|
|
|
|
|
await getList();
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
@ -829,6 +868,8 @@ const submitForm = () => {
|
|
|
|
|
/** 批量新增组装数据 */
|
|
|
|
|
const batchesAddAssemblyData = () => {
|
|
|
|
|
const formData = form.value;
|
|
|
|
|
formData.workshopId = workshopId.value;//车间
|
|
|
|
|
formData.processId = 18;//硫化
|
|
|
|
|
let list = [];
|
|
|
|
|
if (formData.planAmount1 > 0) {
|
|
|
|
|
let data = { ...formData };
|
|
|
|
|