Browse Source

Merge branch 'master_hella' of http://dev.ccwin-in.com:3000/sfms3.0/sfms3.0-ui into master_hella

master_hella_20240701
zhaoxuebing 7 months ago
parent
commit
f0b3189311
  1. 101
      src/views/mes/workScheduling/components/report.vue

101
src/views/mes/workScheduling/components/report.vue

@ -4,9 +4,59 @@
v-model="dialogVisible" v-model="dialogVisible"
:close-on-click-modal="true" :close-on-click-modal="true"
:vLoading="formLoading" :vLoading="formLoading"
width="fit-content"
> >
<template #title>{{ dialogTitle }} </template> <template #title>{{ dialogTitle }} </template>
<el-form> <el-button type="primary" @click="addRow" style="float:right;;">添加</el-button>
<el-table :data="tableData" style="border: 1px;stripe; width:1300px ;" >
<el-table-column prop="processName" label="工序名称" width="200px">
<template #default="scope">
<el-select v-model="scope.row.processCodeSelected" @change="processChange" value-key="processCode">
<el-option v-for="item in processOption" :key="item.processCode" :label="item.processName" :value="item.processCode" />
</el-select>
</template>
</el-table-column>
<el-table-column prop="reportName" label="报工人" width="200px">
<template #default="scope">
<el-select v-model="scope.row.personSelected" multiple :value-key="workerCode">
<el-option v-for="item in personOption" :key="item.workerCode" :label="item.workerName" :value="item.workerCode" />
</el-select>
</template>
</el-table-column>
<el-table-column prop="reportCount" label="报工数量" width="200px" >
<template #default="scope">
<el-input-number v-model="scope.row.reportCount" @change="handleCount(scope.row)" :key="count"></el-input-number>
</template>
</el-table-column>
<el-table-column prop="workTerm" label="工时" width="200px" >
<template #default="scope">
<el-input-number v-model="scope.row.workTerm"></el-input-number>
</template>
</el-table-column>
<el-table-column prop="checkFlag" label="已质检" width="80px" >
<template #default="scope">
<el-switch inactive-value="false" v-model="scope.row.checkFlag" ></el-switch>
</template>
</el-table-column>
<el-table-column prop="qualified" label="合格数" width="200px" >
<template #default="scope" >
<el-input-number v-model="scope.row.qualified" @change="handleCount(scope.row)" :key="qcount" :disabled="scope.row.checkFlag=='false'" ></el-input-number>
</template>
</el-table-column>
<el-table-column prop="unqualified" label="不合格数" width="100px">
<template #default="scope">
<el-input v-model="scope.row.unqualified" disabled="true">{{scope.row.unqualified= scope.row.reportCount -scope.row.qualified}}</el-input>
</template>
</el-table-column>
<el-table-column label="操作" width="100px">
<template #default="scope">
<el-button type="text" @click="deleteRow(scope.$index)">删除</el-button>
</template>
</el-table-column>
</el-table>
<!-- <el-form>
<el-form-item label="选择工序"> <el-form-item label="选择工序">
<el-select v-model="processCodeSelected" @change="processChange" value-key="processCode"> <el-select v-model="processCodeSelected" @change="processChange" value-key="processCode">
<el-option v-for="item in processOption" :key="item.processCode" :label="item.processName" :value="item.processCode" /> <el-option v-for="item in processOption" :key="item.processCode" :label="item.processName" :value="item.processCode" />
@ -36,13 +86,13 @@
<el-form-item label="不合格数量"> <el-form-item label="不合格数量">
<el-input-number disabled v-model="unqualified"></el-input-number> <el-input-number disabled v-model="unqualified"></el-input-number>
</el-form-item> </el-form-item>
</el-form> </el-form> -->
<template #footer> <template #footer>
<el-button @click="dialogVisible = false">关闭</el-button> <el-button @click="dialogVisible = false">关闭</el-button>
<el-button type="primary" :disabled="saveFlag" @click="saveReport">保存</el-button> <el-button type="primary" :disabled="saveFlag" @click="saveReport">保存</el-button>
</template> </Dialog </template> </Dialog
>+ >
</template> </template>
<script lang="ts" setup> <script lang="ts" setup>
import { Dialog } from '@/components/Dialog' import { Dialog } from '@/components/Dialog'
@ -56,6 +106,7 @@ const openDetail = async (row: any, titleName: any) => {
dialogVisible.value = true dialogVisible.value = true
dialogTitle.value = titleName dialogTitle.value = titleName
getProcessList(row) getProcessList(row)
} }
const dialogVisible = ref(false) const dialogVisible = ref(false)
const dialogTitle = ref() const dialogTitle = ref()
@ -70,6 +121,20 @@ const reportCount = ref()
const qualified = ref() const qualified = ref()
const workTerm = ref() const workTerm = ref()
const saveFlag=ref(false) const saveFlag=ref(false)
const tableData=ref([{}])
const addRow=()=>{
tableData.value.push({
processCode:processCodeSelected.value,
processName:processOption.value?.find(item=>item.processCode==processCodeSelected.value)?.processName,
reportName:personOption.value?.find(item=>item.workerCode==personSelected.value)?.workerName,
reportCount:reportCount.value,
workTerm:workTerm.value,
checkFlag:checkFlag.value})
}
const deleteRow = (index: number) => {
tableData.value.splice(index, 1)
}
// //
const getProcessList=async(row)=>{ const getProcessList=async(row)=>{
let params={ let params={
@ -79,12 +144,12 @@ const getProcessList=async(row)=>{
processOption.value=await workschedulingApi.getProcessList(params) processOption.value=await workschedulingApi.getProcessList(params)
} }
const processChange=(val:any)=>{ const processChange=(val:any)=>{
console.log("processChange-81",val) //console.log("processChange-81",val)
getCurrentWorkerList(val) getCurrentWorkerList(val)
} }
// //
const getCurrentWorkerList = async (val) => { const getCurrentWorkerList = async (val) => {
console.log("personOption-91",val) //console.log("personOption-91",val)
let params = { let params = {
planDayCode: rowData.value.planMasterCode, planDayCode: rowData.value.planMasterCode,
processCode: val processCode: val
@ -92,25 +157,31 @@ console.log("personOption-91",val)
personOption.value = await workschedulingApi.getCurrentWorkerList(params) personOption.value = await workschedulingApi.getCurrentWorkerList(params)
} }
const count = ref(0)
const qcount = ref(1)
// //
const handleCount = () => { const handleCount = (row) => {
if (reportCount.value > rowData.value.planCount) { if (row.reportCount > rowData.value.planCount) {
message.alert('报工数量不能超出计划数量!计划数【'+rowData.value.planCount+'】') message.alert('报工数量不能超出计划数量!计划数【'+rowData.value.planCount+'】')
reportCount.value =rowData.value.planCount row.reportCount =rowData.value.planCount
//tableData.value[index].reportCount =rowData.value.planCount
count.value++
return return
} }
//message.alert(row.checkFlag==true?'1':'2')
if (checkFlag.value) { if (row.checkFlag) {
if (reportCount.value < qualified.value) { if (row.reportCount < row.qualified) {
message.alert('合格数不能超出报工数!') message.alert('合格数不能超出报工数!')
qualified.value=0 row.qualified=row.reportCount
qcount.value++
return return
} }
if (qualified.value == undefined || qualified.value == 0) { if (row.qualified == undefined || row.qualified == 0) {
qualified.value = reportCount.value row.qualified = row.reportCount
qcount.value++
} }
unqualified.value = reportCount.value - qualified.value row.unqualified= row.reportCount- row.qualified
} }
} }
// //

Loading…
Cancel
Save