main
chenshuichuan 2 years ago
parent 356b099889
commit fb89b36055

@ -123,4 +123,8 @@ export const TaskApi = {
generatePlanByTask: async (params) => {
return await request.get({ url: `/mes/task/generate-plan/byTask`, params })
},
// 修改生产任务单状态
changeStatus: async (status, id) => {
return await request.get({ url: `/mes/task/changeStatus?status=` + status +`&id=`+id})
},
}

@ -197,7 +197,7 @@ const formData = ref({
no: undefined //
})
const formRules = reactive({
supplierId: [{ required: true, message: '供应商不能为空', trigger: 'blur' }],
// supplierId: [{ required: true, message: '', trigger: 'blur' }],
inTime: [{ required: true, message: '入库时间不能为空', trigger: 'blur' }]
})
const disabled = computed(() => formType.value === 'detail')

@ -57,8 +57,8 @@
<el-input-number
v-model="row.count"
controls-position="right"
:min="0.001"
:precision="3"
:min="1"
class="!w-100%"
/>
</el-form-item>
@ -262,7 +262,7 @@ defineExpose({ validate })
/** 初始化 */
onMounted(async () => {
productList.value = await ProductApi.getProductSimpleList()
productList.value = await ProductApi.getMesProductSimpleList()
//
if (formData.value.length === 0) {
handleAdd()

@ -29,34 +29,6 @@
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="16">
<el-form-item label="状态" prop="status">
<el-radio-group v-model="formData.status">
<el-radio
v-for="dict in getIntDictOptions(DICT_TYPE.MES_TASK_STATUS)"
:key="dict.value"
:label="dict.value"
>
{{ dict.label }}
</el-radio>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="启用" prop="isEnable">
<el-radio-group v-model="formData.isEnable">
<el-radio
v-for="dict in getBoolDictOptions(DICT_TYPE.INFRA_BOOLEAN_STRING)"
:key="dict.value"
:label="dict.value"
>
{{ dict.label }}
</el-radio>
</el-radio-group>
</el-form-item>
</el-col>
</el-row>
</el-form>
<!-- 子表的表单 -->
<el-tabs v-model="subTabsName">
@ -98,8 +70,6 @@ const formData = ref({
const formRules = reactive({
code: [{ required: true, message: '编码不能为空', trigger: 'blur' }],
deliveryDate: [{ required: true, message: '交货日期不能为空', trigger: 'blur' }],
status: [{ required: true, message: '状态不能为空', trigger: 'blur' }],
isEnable: [{ required: true, message: '是否启用不能为空', trigger: 'blur' }],
})
const formRef = ref() // Ref

@ -8,15 +8,7 @@
v-loading="formLoading"
>
<el-form-item label="编码" prop="code">
<el-input v-model="formData.code" placeholder="请输入编码" />
</el-form-item>
<el-form-item label="下达日期" prop="orderDate">
<el-date-picker
v-model="formData.orderDate"
type="date"
value-format="x"
placeholder="选择下达日期"
/>
<el-input disabled v-model="formData.code" placeholder="编码保存后自动生成" />
</el-form-item>
<el-form-item label="交货日期" prop="deliveryDate">
<el-date-picker
@ -26,17 +18,7 @@
placeholder="选择交货日期"
/>
</el-form-item>
<el-form-item label="状态" prop="status">
<el-radio-group v-model="formData.status">
<el-radio
v-for="dict in getIntDictOptions(DICT_TYPE.MES_TASK_STATUS)"
:key="dict.value"
:label="dict.value"
>
{{ dict.label }}
</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="formData.remark" placeholder="请输入备注" />
@ -74,10 +56,7 @@ const formData = ref({
isEnable: undefined
})
const formRules = reactive({
code: [{ required: true, message: '编码不能为空', trigger: 'blur' }],
deliveryDate: [{ required: true, message: '交货日期不能为空', trigger: 'blur' }],
status: [{ required: true, message: '状态不能为空', trigger: 'blur' }]
})
const formRef = ref() // Ref

@ -31,7 +31,7 @@
<el-table-column label="单位" min-width="100">
<template #default="{ row, $index }">
<el-form-item :prop="`${$index}.unitId`" :rules="formRules.unitId" class="mb-0px!">
<el-select v-model="row.unitId" clearable filterable placeholder="请选择单位" class="w-1/1">
<el-select v-model="row.unitId" clearable filterable placeholder="" class="w-1/1">
<el-option
v-for="unit in unitList"
:key="unit.id"
@ -67,21 +67,21 @@
<el-table-column label="项目名称" min-width="100">
<template #default="{ row, $index }">
<el-form-item :prop="`${$index}.projectName`" :rules="formRules.projectName" class="mb-0px!">
<el-input v-model="row.projectName" placeholder="请输入项目名称" />
<el-input v-model="row.projectName" placeholder="" />
</el-form-item>
</template>
</el-table-column>
<el-table-column label="技术要求" min-width="150">
<template #default="{ row, $index }">
<el-form-item :prop="`${$index}.techRequirements`" :rules="formRules.techRequirements" class="mb-0px!">
<el-input v-model="row.techRequirements" placeholder="请输入技术要求" />
<el-input v-model="row.techRequirements" placeholder="" />
</el-form-item>
</template>
</el-table-column>
<el-table-column label="备注" min-width="150">
<template #default="{ row, $index }">
<el-form-item :prop="`${$index}.remark`" :rules="formRules.remark" class="mb-0px!">
<el-input v-model="row.remark" placeholder="请输入备注" />
<el-input v-model="row.remark" placeholder="" />
</el-form-item>
</template>
</el-table-column>
@ -92,7 +92,7 @@
v-model="row.finishDate"
type="date"
value-format="x"
placeholder="选择工厂完成"
placeholder=""
/>
</el-form-item>
</template>
@ -104,7 +104,7 @@
v-model="row.boxingDate"
type="date"
value-format="x"
placeholder="选择装柜时间"
placeholder=""
/>
</el-form-item>
</template>
@ -116,7 +116,7 @@
v-model="row.arriveDate"
type="date"
value-format="x"
placeholder="选择到达时间"
placeholder=""
/>
</el-form-item>
</template>
@ -124,17 +124,11 @@
<el-table-column label="条码" min-width="150">
<template #default="{ row, $index }">
<el-form-item :prop="`${$index}.barCode`" :rules="formRules.barCode" class="mb-0px!">
<el-input v-model="row.barCode" placeholder="请输入条码" />
<el-input v-model="row.barCode" placeholder="" />
</el-form-item>
</template>
</el-table-column>
<!-- <el-table-column label="附件" min-width="150">-->
<!-- <template #default="{ row, $index }">-->
<!-- <el-form-item :prop="`${$index}.attachment`" :rules="formRules.attachment" class="mb-0px!">-->
<!-- <UploadFile v-model="row.attachment" :is-show-tip = "false" :limit = "1"/>-->
<!-- </el-form-item>-->
<!-- </template>-->
<!-- </el-table-column>-->
<el-table-column align="center" fixed="right" label="操作" width="60">
<template #default="{ $index }">
<el-button type="danger" @click="handleDelete($index)" link>

@ -1,5 +1,5 @@
<template>
<Dialog :title="dialogTitle" v-model="dialogVisible">
<Dialog :title="dialogTitle" v-model="dialogVisible" width="1200px">
<el-form
ref="formRef"
:model="formData"
@ -7,100 +7,129 @@
label-width="100px"
v-loading="formLoading"
>
<el-form-item label="产品" prop="productId">
<el-select
v-model="formData.productId"
clearable
filterable
placeholder="请选择产品"
>
<el-option
v-for="item in productList"
:key="item.id"
:label="item.name"
:value="item.id"
/>
</el-select>
</el-form-item>
<el-form-item label="单位" prop="unitId">
<el-select
v-model="formData.unitId"
clearable
filterable
placeholder="请选择产品"
>
<el-option
v-for="item in unitList"
:key="item.id"
:label="item.name"
:value="item.id"
/>
</el-select>
</el-form-item>
<el-form-item label="数量" prop="number">
<el-input-number
v-model="formData.number"
:min="0"
class="!w-1/1"
placeholder="请输入数量"
/>
</el-form-item>
<el-form-item label="每包/个" prop="packageSize">
<el-input-number
v-model="formData.packageSize"
:min="0"
class="!w-1/1"
placeholder="请输入打包要求(每包/个)"
/>
</el-form-item>
<el-form-item label="项目名称" prop="projectName">
<el-input v-model="formData.projectName" placeholder="请输入项目名称" />
</el-form-item>
<el-form-item label="技术要求" prop="techRequirements">
<el-input v-model="formData.techRequirements" placeholder="请输入技术要求" />
</el-form-item>
<el-row :gutter="20">
<el-col :span="8">
<el-form-item label="产品" prop="productId">
<el-select
v-model="formData.productId"
clearable
filterable
placeholder="请选择产品"
>
<el-option
v-for="item in productList"
:key="item.id"
:label="item.name"
:value="item.id"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="单位" prop="unitId">
<el-select
disabled
v-model="formData.unitId"
clearable
filterable
placeholder="请选择产品"
>
<el-option
v-for="item in unitList"
:key="item.id"
:label="item.name"
:value="item.id"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="数量" prop="number">
<el-input-number
v-model="formData.number"
:min="0"
class="!w-1/1"
placeholder="请输入数量"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-form-item label="项目" prop="projectName">
<el-input v-model="formData.projectName" placeholder="请输入项目名称" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="每包/个" prop="packageSize">
<el-input-number
v-model="formData.packageSize"
:min="0"
class="!w-1/1"
placeholder="请输入打包要求(每包/个)"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="打包数/包" prop="packageNumber">
<el-input-number
v-model="formData.packageNumber"
:min="0"
class="!w-1/1"
placeholder="请输入数量"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-form-item label="条码" prop="barCode">
<el-input v-model="formData.barCode" placeholder="请输入条码" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="技术要求" prop="techRequirements">
<el-input v-model="formData.techRequirements" placeholder="请输入技术要求" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-form-item label="工厂完成" prop="finishDate">
<el-date-picker
v-model="formData.finishDate"
type="date"
value-format="x"
placeholder="选择工厂完成日期"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="装柜日期" prop="boxingDate">
<el-date-picker
v-model="formData.boxingDate"
type="date"
value-format="x"
placeholder="选择装柜日期"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="到达日期" prop="arriveDate">
<el-date-picker
v-model="formData.arriveDate"
type="date"
value-format="x"
placeholder="选择到达日期"
/>
</el-form-item>
</el-col>
</el-row>
<el-form-item label="备注" prop="remark">
<el-input v-model="formData.remark" placeholder="请输入备注" />
</el-form-item>
<el-form-item label="打包数量/包" prop="packageNumber">
<el-input-number
v-model="formData.packageNumber"
:min="0"
class="!w-1/1"
placeholder="请输入数量"
/>
</el-form-item>
<el-form-item label="条码" prop="barCode">
<el-input v-model="formData.barCode" placeholder="请输入条码" />
</el-form-item>
<el-form-item label="附件" prop="attachment">
<UploadFile v-model="formData.attachment" :limit="1"/>
<Editor v-model="formData.remark" height="200px" />
</el-form-item>
<el-form-item label="工厂完成" prop="finishDate">
<el-date-picker
v-model="formData.finishDate"
type="date"
value-format="x"
placeholder="选择工厂完成日期"
/>
</el-form-item>
<el-form-item label="装柜日期" prop="boxingDate">
<el-date-picker
v-model="formData.boxingDate"
type="date"
value-format="x"
placeholder="选择装柜日期"
/>
</el-form-item>
<el-form-item label="到达日期" prop="arriveDate">
<el-date-picker
v-model="formData.arriveDate"
type="date"
value-format="x"
placeholder="选择到达日期"
/>
</el-form-item>
</el-form>
<template #footer>
<el-button @click="submitForm" type="primary" :disabled="formLoading"> </el-button>
@ -163,7 +192,14 @@ const open = async (type: string, id?: number, taskId: number) => {
}
}
//
unitList.value = await ProductUnitApi.getProductUnitSimpleList()
//unitList.value = await ProductUnitApi.getProductUnitSimpleList()
unitList.value= [
{
id: 5,
name: '个',
},
]
formData.value.unitId = 5
productList.value = await ProductApi.getMesProductSimpleList()
}
defineExpose({ open }) // open

@ -119,6 +119,12 @@
<el-table-column label="操作" align="center" min-width="200px">
<template #default="scope">
<el-button v-if="scope.row.status==0" link type="primary" @click="changeStatus('送审',1, scope.row.id)" v-hasPermi="['mes:task:update']">
送审
</el-button>
<el-button v-if="scope.row.status==1" link type="primary" @click="changeStatus('审核',2, scope.row.id)" v-hasPermi="['mes:task:update']">
审核
</el-button>
<el-button link type="info" @click="openItemNeed(scope.row.code, scope.row.id)" v-hasPermi="['mes:task:update']">
物料
</el-button>
@ -278,4 +284,16 @@ const handleTabClick = (tab: TabsPaneContext) => {
queryParams.status = tab.paneName
handleQuery()
}
/** 送审/审核 */
const changeStatus = async (type:string, status: number, id: number) => {
try {
//
await message.confirm("确认"+type+"?")
//
await TaskApi.changeStatus(status, id)
message.success(type+"成功!")
//
await getList()
} catch {}
}
</script>

Loading…
Cancel
Save