提交
This commit is contained in:
parent
13ca3ff660
commit
054cdc265f
@ -47,10 +47,19 @@ export function mytasks(params:any) {
|
||||
}
|
||||
|
||||
//派工数据统计
|
||||
export function workload(params:any) {
|
||||
export function workload(params?:any) {
|
||||
return request({
|
||||
url: `/mes/dispatch/workload`,
|
||||
method: 'get',
|
||||
params
|
||||
})
|
||||
}
|
||||
|
||||
//报检
|
||||
export function inspectio(data:any) {
|
||||
return request({
|
||||
url: `/mes/dispatch/qc`,
|
||||
method: 'put',
|
||||
data
|
||||
})
|
||||
}
|
||||
@ -115,7 +115,7 @@
|
||||
<!-- 新增/编辑弹窗 -->
|
||||
<n-modal
|
||||
v-model:show="editmodal"
|
||||
title="编辑派工"
|
||||
title="编辑派工单"
|
||||
preset="card"
|
||||
style="width: 800px"
|
||||
:mask-closable="false"
|
||||
@ -128,7 +128,7 @@
|
||||
label-width="80"
|
||||
class="modal-form"
|
||||
>
|
||||
<n-grid :cols="2" :x-gap="16">
|
||||
<n-grid :cols="2">
|
||||
<!-- <n-gi>
|
||||
<n-form-item label="工序编号" path="processName">
|
||||
<n-input v-model:value="formData.processName" placeholder="请输入用户名" :disabled="!!formData.id" />
|
||||
@ -136,22 +136,22 @@
|
||||
</n-gi> -->
|
||||
<n-gi>
|
||||
<n-form-item label="工序名称" path="processName">
|
||||
<n-input v-model:value="formData.processName" placeholder="请输入用户名" />
|
||||
<n-input v-model:value="formData.processName" placeholder="请输入工序名称" />
|
||||
</n-form-item>
|
||||
</n-gi>
|
||||
<n-gi>
|
||||
<n-form-item label="工人名称" path="stringUserName">
|
||||
<n-input v-model:value="formData.stringUserName" placeholder="请输入用户名" />
|
||||
<n-input v-model:value="formData.stringUserName" placeholder="请选择工人" />
|
||||
</n-form-item>
|
||||
</n-gi>
|
||||
<n-gi>
|
||||
<n-form-item label="数里" path="quantity">
|
||||
<n-input v-model:value="formData.quantity" placeholder="请输入用户名" />
|
||||
<n-form-item label="数量" path="quantity">
|
||||
<n-input v-model:value="formData.quantity" placeholder="请输入数量" />
|
||||
</n-form-item>
|
||||
</n-gi>
|
||||
<n-gi>
|
||||
<n-form-item label="是否返工" path="rework">
|
||||
<n-input v-model:value="formData.rework" placeholder="请输入用户名" />
|
||||
<n-input v-model:value="formData.rework" placeholder="请输入" />
|
||||
</n-form-item>
|
||||
</n-gi>
|
||||
<!-- <n-gi>
|
||||
@ -160,7 +160,7 @@
|
||||
</n-form-item>
|
||||
</n-gi> -->
|
||||
<n-gi>
|
||||
<n-form-item label="完成数里" path="completedQuantity">
|
||||
<n-form-item label="完成数量" path="completedQuantity">
|
||||
<n-input v-model:value="formData.completedQuantity" placeholder="请输入用户名" :disabled="!!formData.id" />
|
||||
</n-form-item>
|
||||
</n-gi>
|
||||
@ -194,8 +194,14 @@
|
||||
:rules="reassrules"
|
||||
label-placement="top"
|
||||
label-width="80"
|
||||
class="modal-form"
|
||||
>
|
||||
<n-form-item label="工序编号">
|
||||
<n-input v-model:value="gxobg.id" disabled />
|
||||
</n-form-item>
|
||||
<n-form-item label="工序名称">
|
||||
<n-input v-model:value="gxobg.name" disabled />
|
||||
</n-form-item>
|
||||
|
||||
<n-form-item label="工人名称" path="">
|
||||
<n-input v-model:value="reassform.userid" placeholder="请选择员工" />
|
||||
</n-form-item>
|
||||
@ -211,7 +217,7 @@
|
||||
:loading="reassLoading"
|
||||
@click="reassSubmit"
|
||||
:disabled="reassdisedbtn"
|
||||
>保存</n-button>
|
||||
>确定</n-button>
|
||||
</n-space>
|
||||
</template>
|
||||
</n-modal>
|
||||
@ -229,9 +235,13 @@
|
||||
:model="pauseform"
|
||||
label-placement="top"
|
||||
label-width="80"
|
||||
class="modal-form"
|
||||
>
|
||||
|
||||
<n-form-item label="工序编号">
|
||||
<n-input v-model:value="gxobg.id" disabled />
|
||||
</n-form-item>
|
||||
<n-form-item label="工序名称">
|
||||
<n-input v-model:value="gxobg.name" disabled />
|
||||
</n-form-item>
|
||||
<n-form-item label="暂停原因" path="reason">
|
||||
<n-input type="textarea" v-model:value="pauseform.reason" placeholder="请输入暂停原因" />
|
||||
</n-form-item>
|
||||
@ -244,7 +254,7 @@
|
||||
:loading="submitLoading"
|
||||
@click="pauseSubmit"
|
||||
:disabled="disedbtn"
|
||||
>保存</n-button>
|
||||
>确定</n-button>
|
||||
</n-space>
|
||||
</template>
|
||||
</n-modal>
|
||||
@ -286,7 +296,7 @@ import {
|
||||
editdiswor,
|
||||
transfer,
|
||||
pauseresume,
|
||||
workload
|
||||
//workload
|
||||
} from '@/api/production'
|
||||
|
||||
//const dialog = useDialog()
|
||||
@ -630,6 +640,8 @@ function handleSubmit() {
|
||||
})
|
||||
}
|
||||
|
||||
let gxobg = reactive<any>({})
|
||||
|
||||
//改派
|
||||
let reassignmodal = ref(false)
|
||||
|
||||
@ -650,6 +662,10 @@ let reassLoading = ref(false)
|
||||
let reassdisedbtn = ref(false)
|
||||
|
||||
function handlreass(n:any) {
|
||||
|
||||
gxobg.name = n.processName
|
||||
gxobg.id = n.processId
|
||||
|
||||
reassignmodal.value = true
|
||||
reassLoading.value = false
|
||||
reassdisedbtn.value = false
|
||||
@ -696,6 +712,10 @@ const pauseformRef = ref()
|
||||
let pauseisedbtn = ref(false)
|
||||
|
||||
function handlpause(n:any) {
|
||||
|
||||
gxobg.name = n.processName
|
||||
gxobg.id = n.processId
|
||||
|
||||
pausemodal.value = true
|
||||
pauseLoading.value = false
|
||||
pauseisedbtn.value = false
|
||||
@ -744,7 +764,7 @@ function pauseSubmit() {
|
||||
onMounted(() => {
|
||||
|
||||
getlist()
|
||||
workload()
|
||||
//workload()
|
||||
|
||||
})
|
||||
</script>
|
||||
|
||||
@ -15,9 +15,7 @@
|
||||
<n-form-item-gi :span="6" label="工序名称">
|
||||
<n-input v-model:value="searchForm.processName" placeholder="请输入工序名称" clearable />
|
||||
</n-form-item-gi>
|
||||
<n-form-item-gi :span="6" label="工人名称">
|
||||
<n-input v-model:value="searchForm.stringUserName" placeholder="请输入工人名称" clearable />
|
||||
</n-form-item-gi>
|
||||
|
||||
<!-- <n-form-item-gi :span="6" label="数里">
|
||||
<n-input v-model:value="searchForm.processId" placeholder="请输入数里" clearable />
|
||||
</n-form-item-gi> -->
|
||||
@ -112,109 +110,45 @@
|
||||
</div>
|
||||
</n-card>
|
||||
|
||||
<!-- 新增/编辑弹窗 -->
|
||||
<!--暂停恢复弹框-->
|
||||
<n-modal
|
||||
v-model:show="editmodal"
|
||||
title="编辑派工"
|
||||
preset="card"
|
||||
style="width: 800px"
|
||||
:mask-closable="false"
|
||||
>
|
||||
<n-form
|
||||
ref="formRef"
|
||||
:model="formData"
|
||||
:rules="rules"
|
||||
label-placement="left"
|
||||
label-width="80"
|
||||
class="modal-form"
|
||||
>
|
||||
<n-grid :cols="2" :x-gap="16">
|
||||
<!-- <n-gi>
|
||||
<n-form-item label="工序编号" path="processName">
|
||||
<n-input v-model:value="formData.processName" placeholder="请输入用户名" :disabled="!!formData.id" />
|
||||
</n-form-item>
|
||||
</n-gi> -->
|
||||
<n-gi>
|
||||
<n-form-item label="工序名称" path="processName">
|
||||
<n-input v-model:value="formData.processName" placeholder="请输入用户名" />
|
||||
</n-form-item>
|
||||
</n-gi>
|
||||
<n-gi>
|
||||
<n-form-item label="工人名称" path="stringUserName">
|
||||
<n-input v-model:value="formData.stringUserName" placeholder="请输入用户名" />
|
||||
</n-form-item>
|
||||
</n-gi>
|
||||
<n-gi>
|
||||
<n-form-item label="数里" path="quantity">
|
||||
<n-input v-model:value="formData.quantity" placeholder="请输入用户名" />
|
||||
</n-form-item>
|
||||
</n-gi>
|
||||
<n-gi>
|
||||
<n-form-item label="是否返工" path="rework">
|
||||
<n-input v-model:value="formData.rework" placeholder="请输入用户名" />
|
||||
</n-form-item>
|
||||
</n-gi>
|
||||
<!-- <n-gi>
|
||||
<n-form-item label="返工次数" path="username">
|
||||
<n-input v-model:value="formData.username" placeholder="请输入用户名" :disabled="!!formData.id" />
|
||||
</n-form-item>
|
||||
</n-gi> -->
|
||||
<n-gi>
|
||||
<n-form-item label="完成数里" path="completedQuantity">
|
||||
<n-input v-model:value="formData.completedQuantity" placeholder="请输入用户名" :disabled="!!formData.id" />
|
||||
</n-form-item>
|
||||
</n-gi>
|
||||
|
||||
</n-grid>
|
||||
</n-form>
|
||||
<template #footer>
|
||||
<n-space justify="end">
|
||||
<n-button @click="editmodal = false">取消</n-button>
|
||||
<n-button
|
||||
type="primary"
|
||||
:loading="submitLoading"
|
||||
@click="handleSubmit"
|
||||
:disabled="disedbtn"
|
||||
>保存</n-button>
|
||||
</n-space>
|
||||
</template>
|
||||
</n-modal>
|
||||
|
||||
<!--改派弹框-->
|
||||
<n-modal
|
||||
v-model:show="reassignmodal"
|
||||
title="改派"
|
||||
v-model:show="pausemodal"
|
||||
title="报检"
|
||||
preset="card"
|
||||
style="width: 400px"
|
||||
:mask-closable="false"
|
||||
>
|
||||
|
||||
<n-form
|
||||
ref="reassformRef"
|
||||
:model="reassform"
|
||||
:rules="reassrules"
|
||||
ref="pauseformRef"
|
||||
:model="pauseform"
|
||||
:rules="pauserules"
|
||||
label-placement="top"
|
||||
label-width="80"
|
||||
class="modal-form"
|
||||
>
|
||||
<n-form-item label="工人名称" path="">
|
||||
<n-input v-model:value="reassform.userid" placeholder="请选择员工" />
|
||||
</n-form-item>
|
||||
<n-form-item label="改派原因" path="reason">
|
||||
<n-input type="textarea" v-model:value="reassform.reason" placeholder="请输入改派原因" />
|
||||
<n-form-item label="工序编号">
|
||||
<n-input v-model:value="gxobg.id" disabled />
|
||||
</n-form-item>
|
||||
<n-form-item label="工序名称">
|
||||
<n-input v-model:value="gxobg.name" disabled />
|
||||
</n-form-item>
|
||||
<n-form-item label="报检数量" path="qcNum">
|
||||
<n-input v-model:value="pauseform.qcNum" placeholder="请输入报检数量" />
|
||||
</n-form-item>
|
||||
</n-form>
|
||||
<template #footer>
|
||||
<n-space justify="end">
|
||||
<n-button @click="reassignmodal = false">取消</n-button>
|
||||
<n-button @click="pausemodal = false">取消</n-button>
|
||||
<n-button
|
||||
type="primary"
|
||||
:loading="reassLoading"
|
||||
@click="reassSubmit"
|
||||
:disabled="reassdisedbtn"
|
||||
:loading="pauseLoading"
|
||||
@click="pauseSubmit"
|
||||
:disabled="pauseisedbtn"
|
||||
>保存</n-button>
|
||||
</n-space>
|
||||
</template>
|
||||
</n-modal>
|
||||
|
||||
|
||||
</div>
|
||||
</template>
|
||||
@ -224,7 +158,8 @@ import {
|
||||
ref,
|
||||
reactive,
|
||||
h,
|
||||
onMounted,
|
||||
onMounted,
|
||||
watch,
|
||||
} from 'vue'
|
||||
|
||||
|
||||
@ -234,11 +169,11 @@ import {
|
||||
NSpace,
|
||||
NPagination,
|
||||
NGrid,
|
||||
NGi,
|
||||
// NGi,
|
||||
NTag,
|
||||
useMessage,
|
||||
//useDialog,
|
||||
type FormInst,
|
||||
//type FormInst,
|
||||
} from 'naive-ui'
|
||||
|
||||
import {
|
||||
@ -250,9 +185,7 @@ import { useUserStore } from '@/stores/user'
|
||||
|
||||
import {
|
||||
mytasks,
|
||||
editdiswor,
|
||||
transfer,
|
||||
pauseresume
|
||||
inspectio
|
||||
} from '@/api/production'
|
||||
|
||||
//const dialog = useDialog()
|
||||
@ -269,9 +202,8 @@ const hasPermission = (permission: string) => userStore.hasPermission(permission
|
||||
const searchForm = reactive({
|
||||
page: 1,
|
||||
pageSize: 20,
|
||||
// processId:'',
|
||||
// processName:'',
|
||||
// stringUserName:''
|
||||
processId:'',
|
||||
processName:'',
|
||||
})
|
||||
|
||||
|
||||
@ -385,7 +317,7 @@ const columns = [
|
||||
},
|
||||
{
|
||||
align:'center',
|
||||
title: '质检打回数里',
|
||||
title: '质检打回数量',
|
||||
key: 'qualityReturnNum',
|
||||
minWidth: 150
|
||||
},
|
||||
@ -444,79 +376,30 @@ const columns = [
|
||||
align:'center',
|
||||
title: '操作',
|
||||
key: 'actions',
|
||||
width: 200,
|
||||
width: 100,
|
||||
fixed: 'right',
|
||||
render(row:any) {
|
||||
const buttons:any = [
|
||||
|
||||
// h(NButton, {
|
||||
// size: 'small',
|
||||
// type:'warning',
|
||||
// ghost:true,
|
||||
// onClick: () => handleEdit(row) },
|
||||
// //{ default: () => [h(NIcon, null, { default: () => h(CreateOutline) }), ' 暂停' ]}
|
||||
// { default: () => '暂停'}
|
||||
// )
|
||||
]
|
||||
const buttons:any = []
|
||||
|
||||
// if(hasPermission('biz:assingWork:edit')){
|
||||
// buttons.push(h(NButton, {
|
||||
// size: 'small',
|
||||
// type:'primary',
|
||||
// ghost:true,
|
||||
// onClick: () => { handleEdit(row) } },
|
||||
// //{ default: () => [h(NIcon, null, { default: () => h(CreateOutline) }), ' 编辑' ]}
|
||||
// { default: () => '编辑'}
|
||||
// ))
|
||||
// }
|
||||
// if(hasPermission('biz:assingWork:transfer')){
|
||||
// buttons.push(h(NButton, {
|
||||
// size: 'small',
|
||||
// type:'success',
|
||||
// ghost:true,
|
||||
// onClick: () => { handlreass(row) } },
|
||||
// { default: () => '改派'}
|
||||
// ))
|
||||
// }
|
||||
// if(hasPermission('biz:assingWork:pauseResume')){
|
||||
// buttons.push(h(NButton, {
|
||||
// size: 'small',
|
||||
// type:'warning',
|
||||
// ghost:true,
|
||||
// onClick:()=>{ handlpause(row) }
|
||||
// },
|
||||
// { default: () => '暂停'}
|
||||
// ))
|
||||
// }
|
||||
// buttons.push(
|
||||
|
||||
// )
|
||||
if(hasPermission('biz:assingWork:edit')){
|
||||
buttons.push(h(NButton, {
|
||||
size: 'small',
|
||||
type:'primary',
|
||||
ghost:true,
|
||||
onClick: () => { handlpause(row) } },
|
||||
//{ default: () => [h(NIcon, null, { default: () => h(CreateOutline) }), ' 编辑' ]}
|
||||
{ default: () => '报检'}
|
||||
))
|
||||
}
|
||||
|
||||
return buttons.length > 0 ? h(NSpace, {justify:'center'}, { default: () => buttons }) : '-'
|
||||
}
|
||||
}
|
||||
]
|
||||
|
||||
// 编辑
|
||||
const editmodal = ref(false)
|
||||
const formRef = ref<FormInst | null>(null)
|
||||
const submitLoading = ref(false)
|
||||
|
||||
const formData = reactive<any>({
|
||||
id:'',
|
||||
processName:'', //工序名称
|
||||
userId:'', //工人id
|
||||
stringUserName:'', //工人名称
|
||||
quantity:'', //数里
|
||||
rework:'', //是否返工
|
||||
reworkNum:'', //返工次数
|
||||
completedQuantity:'', //完成数里
|
||||
})
|
||||
|
||||
const rules = {
|
||||
processName: [{ required: true, message: '请输工序名称', trigger: 'blur' }],
|
||||
quantity: [{ required: true, message: '请输入数里', trigger: 'blur' }]
|
||||
}
|
||||
|
||||
|
||||
//搜索数据
|
||||
function search() {
|
||||
@ -530,7 +413,6 @@ function search() {
|
||||
function reset() {
|
||||
searchForm.processId =''
|
||||
searchForm.processName = ''
|
||||
searchForm.stringUserName = ''
|
||||
}
|
||||
|
||||
//获取列表数据
|
||||
@ -558,117 +440,46 @@ function handlePageSizeChange(pageSize: number) {
|
||||
}
|
||||
|
||||
|
||||
//编辑工单
|
||||
let disedbtn = ref(false)
|
||||
function handleEdit(n:any) {
|
||||
editmodal.value = true
|
||||
submitLoading.value = false
|
||||
disedbtn.value = false
|
||||
formRef.value?.restoreValidation()
|
||||
formData.id = n.id
|
||||
formData.processName = n.processName
|
||||
// formData.userId = '' //工人id
|
||||
// formData.stringUserName = '' //工人名称
|
||||
// formData.quantity = '' //数里
|
||||
// formData.rework = '' //是否返工
|
||||
// formData.reworkNum = '' //返工次数
|
||||
// formData.completedQuantity = '' //完成数里
|
||||
}
|
||||
|
||||
function handleSubmit() {
|
||||
formRef.value?.validate(v => {
|
||||
if(!v){
|
||||
submitLoading.value = true
|
||||
disedbtn.value = true
|
||||
editdiswor(formData).then(() => {
|
||||
message.success('保存成功!')
|
||||
setTimeout(()=> {
|
||||
editmodal.value = false
|
||||
submitLoading.value = false
|
||||
disedbtn.value = false
|
||||
getlist()
|
||||
},1000)
|
||||
}).catch(() => {
|
||||
disedbtn.value = false
|
||||
submitLoading.value = false
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
//改派
|
||||
let reassignmodal = ref(false)
|
||||
|
||||
const reassformRef = ref()
|
||||
|
||||
let reassform = reactive<any>({
|
||||
// userId:'', //工人id
|
||||
// stringUserName:'', //工人名称
|
||||
|
||||
id:'', //派工id
|
||||
reason:'', //改派原因
|
||||
userid:456 //改派人Id
|
||||
})
|
||||
const reassrules = {
|
||||
userid: [{ required: true, message: '请选择员工', trigger: 'blur' }]
|
||||
}
|
||||
let reassLoading = ref(false)
|
||||
let reassdisedbtn = ref(false)
|
||||
|
||||
function handlreass(n:any) {
|
||||
reassignmodal.value = true
|
||||
reassLoading.value = false
|
||||
reassdisedbtn.value = false
|
||||
reassformRef.value?.restoreValidation()
|
||||
reassform.id = n.id
|
||||
reassform.reason = ''
|
||||
reassform.userid = 456
|
||||
|
||||
}
|
||||
|
||||
function reassSubmit() {
|
||||
reassformRef.value?.validate((v:any) => {
|
||||
if(!v){
|
||||
reassLoading.value = true
|
||||
reassdisedbtn.value = true
|
||||
transfer(reassform).then(() => {
|
||||
message.success('操作成功!')
|
||||
setTimeout(()=> {
|
||||
reassignmodal.value = false
|
||||
reassLoading.value = false
|
||||
reassdisedbtn.value = false
|
||||
getlist()
|
||||
},1000)
|
||||
}).catch(() => {
|
||||
reassdisedbtn.value = false
|
||||
reassLoading.value = false
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
//暂停/启用
|
||||
let gxobg = reactive<any>({})
|
||||
|
||||
//报检
|
||||
let pausemodal = ref(false)
|
||||
let pauseform = reactive<any>({
|
||||
id:'',
|
||||
status:'', //0启用1暂停2改派
|
||||
reason:'' //原因
|
||||
qcNum:''
|
||||
})
|
||||
const pauseformRef = ref()
|
||||
|
||||
const pauserules = {
|
||||
qcNum: [
|
||||
{ required: true, message: '请输报检数量', trigger: 'blur' },
|
||||
{
|
||||
validator(value: number) {
|
||||
return value > pauseform.qcNum
|
||||
},
|
||||
trigger: ['blur'],
|
||||
message: `报检数量最大为${pauseform.qcNum}`
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
watch(()=>pauseform.qcNum,v => {
|
||||
pauseform.qcNum = v.replace(/[^\d]/g,'')
|
||||
})
|
||||
|
||||
let pauseLoading = ref(false)
|
||||
let pauseisedbtn = ref(false)
|
||||
|
||||
function handlpause(n:any) {
|
||||
gxobg.id = n.id
|
||||
gxobg.name = n.name
|
||||
|
||||
pausemodal.value = true
|
||||
pauseLoading.value = false
|
||||
pauseisedbtn.value = false
|
||||
pauseformRef.value?.restoreValidation()
|
||||
pauseform.id = n.id
|
||||
pauseform.reason = ''
|
||||
pauseform.status = n.staus
|
||||
pauseform.qcNum = `${n.quantity}`
|
||||
|
||||
}
|
||||
|
||||
@ -677,7 +488,7 @@ function pauseSubmit() {
|
||||
if(!v){
|
||||
pauseLoading.value = true
|
||||
pauseisedbtn.value = true
|
||||
pauseresume(pauseform).then(() => {
|
||||
inspectio(Object.assign({},pauseform,{qcNum:pauseform.qcNum*1})).then(() => {
|
||||
message.success('操作成功!')
|
||||
setTimeout(()=> {
|
||||
pausemodal.value = false
|
||||
|
||||
Loading…
Reference in New Issue
Block a user