工单未完成记录添加

This commit is contained in:
赵正易 2025-01-07 17:26:55 +08:00
parent c6259129a9
commit aab2840361
2 changed files with 162 additions and 2 deletions

View File

@ -0,0 +1,160 @@
<!--
* @Descripttion: (工单修改日志表/pro_workorder_update_log)
* @Author: (admin)
* @Date: (2024-11-19)
-->
<template>
<div>
<el-form :model="queryParams" label-position="right" inline ref="queryRef" v-show="showSearch" @submit.prevent>
<el-form-item label="工单号" prop="fkWorkorder">
<el-input v-model="queryParams.fkWorkorder" placeholder="请输入工单号" />
</el-form-item>
<el-form-item label="组别" prop="groupCode">
<el-select v-model="queryParams.groupCode" placeholder="全部">
<el-option label="全部" value="" />
<el-option v-for="(item, index) in allGroupOptions" :key="index" :label="item.label" :value="item.value" />
</el-select>
</el-form-item>
<el-form-item label="线别" prop="lineCode">
<el-select v-model="queryParams.lineCode" placeholder="全部">
<el-option label="全部" value="" />
<el-option v-for="(item, index) in allRouteOptions" :key="index" :label="item.label" :value="item.value" />
</el-select>
</el-form-item>
<el-form-item label="筛选日期" prop="timeRange">
<el-date-picker
:clearable="false"
v-model="queryParams.timeRange"
type="daterange"
range-separator="到"
start-placeholder="开始时间"
end-placeholder="结束时间"
placeholder="请选择日期区间"
/>
</el-form-item>
<el-form-item>
<el-button icon="search" type="primary" @click="handleQuery">{{ $t('btn.search') }}</el-button>
<el-button icon="refresh" @click="resetQuery">{{ $t('btn.reset') }}</el-button>
</el-form-item>
</el-form>
<!-- 工具区域 -->
<el-row :gutter="15" class="mb10">
<!-- <el-col :span="1.5">
<el-button type="primary" v-hasPermi="['business:proworkorderupdatelog:add']" plain icon="plus" @click="handleAdd"> {{ $t('btn.add') }}异常记录 </el-button>
</el-col> -->
<right-toolbar v-model:showSearch="showSearch" @queryTable="getList" :columns="columns"></right-toolbar>
</el-row>
<el-table :data="dataList" v-loading="loading" ref="table" border header-cell-class-name="el-table-header-cell" highlight-current-row @sort-change="sortChange">
<el-table-column prop="groupCode" label="组别" align="center" :show-overflow-tooltip="true" />
<el-table-column prop="lineCode" label="线别" align="center" :show-overflow-tooltip="true" />
<el-table-column prop="fkWorkorder" label="工单号" align="center" :show-overflow-tooltip="true" />
<el-table-column prop="productionCode" label="产品编号" align="center" :show-overflow-tooltip="true" />
<el-table-column prop="productionName" label="产品名称" align="center" :show-overflow-tooltip="true" />
<el-table-column prop="dispatchNum" label="计划装配数" align="center" />
<el-table-column prop="finishedNum" label="实际报工数" align="center" />
<el-table-column prop="qualifiedNumber" label="仓库确认数" align="center" />
<el-table-column prop="unfinishedReanson" label="报工未完成原因" align="center" />
</el-table>
<pagination :total="total" v-model:page="queryParams.pageNum" v-model:limit="queryParams.pageSize" @pagination="getList" />
</div>
</template>
<script setup name="proworkorderupdatelog">
import { listProReportwork } from '@/api/productManagement/proreportwork.js'
const { proxy } = getCurrentInstance()
const ids = ref([])
const loading = ref(false)
const showSearch = ref(true)
const queryParams = reactive({
timeRange: [proxy.dayjs(), proxy.dayjs()],
fkWorkorder: '',
groupCode: '',
lineCode: '',
warehouseconfirmationNum: 0,
unfinishReportwork: 1,
pageNum: 1,
pageSize: 10,
sort: 'groupCode',
sortType: 'asc'
})
const total = ref(0)
const dataList = ref([])
const queryRef = ref()
function getList() {
loading.value = true
listProReportwork(queryParams).then((res) => {
const { code, data } = res
if (code == 200) {
dataList.value = data.result
total.value = data.totalNum
loading.value = false
}
})
}
//
function handleQuery() {
queryParams.pageNum = 1
getList()
}
//
function resetQuery() {
proxy.resetForm('queryRef')
handleQuery()
}
//
function sortChange(column) {
var sort = undefined
var sortType = undefined
if (column.prop != null && column.order != null) {
sort = column.prop
sortType = column.order
}
queryParams.sort = sort
queryParams.sortType = sortType
handleQuery()
}
// =========== 线 ==========
import { GetAllRoute } from '@/api/productManagement/proworkorder.js'
const allRouteOptions = ref([])
function getAllRouteOptions() {
GetAllRoute().then((res) => {
if (res.code === 200) {
allRouteOptions.value = res.data.map((item) => {
return {
id: item.id,
label: `${item.code}-${item.name}`,
value: `${item.code}`
}
})
}
})
}
getAllRouteOptions()
// ==================================
// =========== ==========
import { GetAllGroup } from '@/api/productManagement/proworkorder.js'
const allGroupOptions = ref([])
function getAllGroupSelectOptions() {
GetAllGroup().then((res) => {
if (res.code === 200) {
allGroupOptions.value = res.data.map((item) => {
return {
id: item.id,
label: `${item.groupCode}-${item.groupName}`,
value: `${item.groupCode}`
}
})
}
})
}
getAllGroupSelectOptions()
// ==================================
handleQuery()
</script>

View File

@ -70,7 +70,7 @@
<el-table-column prop="dispatchNum" label="计划装配数" align="center" v-if="columns.showColumn('dispatchNum')" />
<el-table-column prop="finishedNum" label="实际报工数" align="center" v-if="columns.showColumn('finishedNum')" />
<el-table-column prop="qualifiedNumber" label="仓库确认数" align="center" v-if="columns.showColumn('qualifiedNumber')" />
<el-table-column prop="unfinishedReanson" label="异常原因" align="center" />
<el-table-column prop="unfinishedReanson" label="报工未完成原因" align="center" />
<el-table-column prop="groupCode" label="组别" align="center" :show-overflow-tooltip="true" v-if="columns.showColumn('groupCode')" />
<el-table-column prop="lineCode" label="线别" align="center" :show-overflow-tooltip="true" v-if="columns.showColumn('lineCode')" />
@ -132,7 +132,7 @@
</el-form-item>
</el-col>
<el-col :lg="24">
<el-form-item label="异常原因" prop="unfinishedReanson">
<el-form-item label="报工未完成原因" prop="unfinishedReanson">
<el-select v-model="form.unfinishedReanson" placeholder="全部">
<el-option v-for="(item, index) in unfinishedReasonDict" :key="index" :label="item.dictLabel" :value="item.dictValue" />
</el-select>