fix:车间库存添加检验和检验记录(当作中检)

This commit is contained in:
shijing 2025-02-17 16:16:36 +08:00
parent 62faabfbac
commit 0d51f7c835
5 changed files with 1015 additions and 101 deletions

View File

@ -0,0 +1,223 @@
<template>
<el-drawer
v-model="visible"
title="检验记录"
:size="'90%'"
destroy-on-close
@closed="$emit('closed')"
>
<el-container>
<el-main>
<scTable
ref="drawer_table"
:apiObj="apiObj"
row-key="id"
stripe
:params="paramsObj"
>
<el-table-column type="expand" v-if="deptName=='6车间'">
<template #default="props">
<el-descriptions title="不合格列表" :column="5" border>
<el-descriptions-item label="划伤" width="150px">
{{props.row.count_notok_json.count_n_hs}}
</el-descriptions-item>
<el-descriptions-item label="挫伤" width="150px">
{{props.row.count_notok_json.count_n_hs}}
</el-descriptions-item>
<el-descriptions-item label="杂质" width="150px">
{{props.row.count_notok_json.count_n_zz}}
</el-descriptions-item>
<el-descriptions-item label="条纹" width="150px">
{{props.row.count_notok_json.count_n_tw}}
</el-descriptions-item>
<el-descriptions-item label="锥度大" width="150px">
{{props.row.count_notok_json.count_n_zdd}}
</el-descriptions-item>
<el-descriptions-item label="短" width="150px">
{{props.row.count_notok_json.count_n_d}}
</el-descriptions-item>
<el-descriptions-item label="炸纹" width="150px">
{{props.row.count_notok_json.count_n_zw}}
</el-descriptions-item>
<el-descriptions-item label="断裂" width="150px">
{{props.row.count_notok_json.count_n_dl}}
</el-descriptions-item>
<el-descriptions-item label="气泡" width="150px">
{{props.row.count_notok_json.count_n_qp}}
</el-descriptions-item>
<el-descriptions-item label="不亮" width="150px">
{{props.row.count_notok_json.count_n_bl}}
</el-descriptions-item>
<el-descriptions-item label="横纹" width="150px">
{{props.row.count_notok_json.count_n_hw}}
</el-descriptions-item>
<el-descriptions-item label="有皮" width="150px">
{{props.row.count_notok_json.count_n_yp}}
</el-descriptions-item>
<el-descriptions-item label="爆皮" width="150px">
{{props.row.count_notok_json.count_n_bp}}
</el-descriptions-item>
<el-descriptions-item label="色差" width="150px">
{{props.row.count_notok_json.count_n_sc}}
</el-descriptions-item>
<el-descriptions-item label="直径大" width="150px">
{{props.row.count_notok_json.count_n_zjd}}
</el-descriptions-item>
<el-descriptions-item label="直径小" width="150px">
{{props.row.count_notok_json.count_n_zjx}}
</el-descriptions-item>
<el-descriptions-item label="气线" width="150px">
{{props.row.count_notok_json.count_n_qx}}
</el-descriptions-item>
<el-descriptions-item label="结石" width="150px">
{{props.row.count_notok_json.count_n_js}}
</el-descriptions-item>
<el-descriptions-item label="椭圆度大" width="150px">
{{props.row.count_notok_json.count_n_tydd}}
</el-descriptions-item>
<el-descriptions-item label="水雾" width="150px">
{{props.row.count_notok_json.count_n_sw}}
</el-descriptions-item>
<el-descriptions-item label="壁厚偏差大" width="150px">
{{props.row.count_notok_json.count_n_bhpcd}}
</el-descriptions-item>
<el-descriptions-item label="弯" width="150px">
{{props.row.count_notok_json.count_n_wq}}
</el-descriptions-item>
</el-descriptions>
</template>
</el-table-column>
<el-table-column type="expand" v-if="deptName=='7车间'">
<template #default="props">
<el-descriptions title="不合格列表" :column="5" border>
<el-descriptions-item label="炸纹" width="150px">
{{props.row.count_notok_json.count_n_zw}}
</el-descriptions-item>
<el-descriptions-item label="炸头" width="150px">
{{props.row.count_notok_json.count_n_zt}}
</el-descriptions-item>
<el-descriptions-item label="条纹" width="150px">
{{props.row.count_notok_json.count_n_tw}}
</el-descriptions-item>
<el-descriptions-item label="气泡" width="150px">
{{props.row.count_notok_json.count_n_qp}}
</el-descriptions-item>
<el-descriptions-item label="扁" width="150px">
{{props.row.count_notok_json.count_n_b}}
</el-descriptions-item>
<el-descriptions-item label="其他" width="150px">
{{props.row.count_notok_json.count_n_qt}}
</el-descriptions-item>
</el-descriptions>
</template>
</el-table-column>
<el-table-column type="expand" v-if="deptName=='10车间'">
<template #default="props">
<el-descriptions title="不合格列表" :column="5" border>
<el-descriptions-item label="椭圆/弯曲" width="150px">
{{props.row.count_notok_json.count_n_wq}}
</el-descriptions-item>
<el-descriptions-item label="条纹" width="150px">
{{props.row.count_notok_json.count_n_tw}}
</el-descriptions-item>
<el-descriptions-item label="断裂" width="150px">
{{props.row.count_notok_json.count_n_dl}}
</el-descriptions-item>
<el-descriptions-item label="偏壁" width="150px">
{{props.row.count_notok_json.count_n_pb}}
</el-descriptions-item>
<el-descriptions-item label="大小头" width="150px">
{{props.row.count_notok_json.count_n_dxt}}
</el-descriptions-item>
<el-descriptions-item label="结石" width="150px">
{{props.row.count_notok_json.count_n_js}}
</el-descriptions-item>
<el-descriptions-item label="气线" width="150px">
{{props.row.count_notok_json.count_n_qx}}
</el-descriptions-item>
<el-descriptions-item label="其他" width="150px">
{{props.row.count_notok_json.count_n_qt}}
</el-descriptions-item>
</el-descriptions>
</template>
</el-table-column>
<el-table-column label="检验类型">
<template #default="scope">
<el-tag v-if="scope.row.type2 == 10">
{{ type2_[scope.row.type2] }}
</el-tag>
<el-tag v-else type="success">
{{ type2_[scope.row.type2] }}
</el-tag>
</template>
</el-table-column>
<el-table-column label="物料批次" prop="batch">
</el-table-column>
<el-table-column label="总数" prop="count">
</el-table-column>
<el-table-column label="检验数">
<template #default="scope">
<span v-if="scope.row.type2 == 10">{{ scope.row.count_sampling }}</span>
<span v-else>{{ scope.row.count }}</span>
</template>
</el-table-column>
<el-table-column label="合格数">
<template #default="scope">
<span v-if="scope.row.type2 == 10">{{ scope.row.count_sampling_ok }}</span>
<span v-else>{{ scope.row.count_ok }}</span>
</template>
</el-table-column>
<el-table-column label="不合格数" prop="count_notok">
</el-table-column>
<el-table-column label="合格率">
<template #default="scope">
<span v-if="scope.row.type2 == 10">{{ scope.row.count_sampling_ok/scope.row.count_sampling*100 }}%</span>
<span v-else>{{ scope.row.count_ok/scope.row.count*100 }}%</span>
</template>
</el-table-column>
<el-table-column label="检验日期" prop="test_date">
</el-table-column>
<el-table-column label="检验人" prop="test_user_name">
</el-table-column>
</scTable>
</el-main>
</el-container>
</el-drawer>
</template>
<script>
export default {
emits: ["closed"],
props: {
deptName: { type: String, default: "" },
wm: { type: String, default: "" },
},
data() {
return {
visible: false,
apiObj: null,
paramsObj: {},
form: {},
type2_: {
10: "抽检",
20: "全检",
},
isSaveing: false,
};
},
mounted() {},
methods: {
open() {
this.visible = true;
this.paramsObj.wm = this.wm;
this.apiObj = this.$API.qm.ftestwork.list;
return this;
},
table_del(row){
this.$API.qm.ftestwork.delete.req(row.id).then((res) => {
this.$refs.drawer_table.fetch();
});
},
},
};
</script>

View File

@ -15,24 +15,68 @@
label-width="100px"
>
<el-row>
<el-col :md="12" :sm="24">
<el-form-item label="检验类型">
<el-select
v-model="form.type2"
placeholder="检验类型"
style="width: 100%"
@testType="handleTypeChange"
>
<el-option
v-for="item in typeOption"
:key="item.value"
:label="item.name"
:value="item.value"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="物料批次">
<el-input v-model="wm_batch" disabled></el-input>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="交接数">
<el-input
<el-col :md="12" :sm="24" v-if="form.type2==20">
<el-form-item label="检验数量">
<el-input-number
:max="originData.count"
controls-position="right"
v-model="form.count"
disabled
></el-input>
style="width: 100%"
:precision="0"
@change="handleCountNotokChange"
></el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-col :md="12" :sm="24" v-if="form.type2==20">
<el-form-item label="合格数量">
<el-input v-model="form.count_ok" disabled></el-input>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24" v-if="form.type2==10">
<el-form-item label="抽检数量">
<el-input-number
:max="batchCount"
controls-position="right"
v-model="form.count_sampling"
style="width: 100%"
:precision="0"
@change="handleCountNotokChange"
></el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24" v-if="form.type2==10">
<el-form-item label="抽检合格数">
<el-input-number
controls-position="right"
v-model="form.count_sampling_ok"
style="width: 100%"
disabled
:precision="0"
></el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="不合格数量">
<el-input-number
@ -40,6 +84,7 @@
v-model="form.count_notok"
style="width: 100%"
:precision="0"
disabled
@change="handleCountNotokChange"
></el-input-number>
</el-form-item>
@ -83,116 +128,582 @@
</el-form-item>
</el-col>
</el-row>
<el-divider style="margin-top:0"></el-divider>
<el-row>
<div class="formTitle">不合格原因及数量:</div>
<!-- 7车间 -->
<el-row v-if="deptName == '7车间'">
<el-col :md="12" :sm="24">
<el-form-item label="">
<el-form-item label="炸纹">
<el-input-number
v-model="count_notok_json.count_n_zw"
controls-position="right"
v-model="count_notok_json.count_n_w"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
:precision="0"
placeholder="炸纹"
@change="handleCountChange"
></el-input-number>
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="炸头">
<el-input-number
v-model="count_notok_json.count_n_zt"
controls-position="right"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
placeholder="炸头"
@change="handleCountChange"
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="条纹">
<el-input-number
v-model="count_notok_json.count_n_tw"
controls-position="right"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
placeholder="条纹"
@change="handleCountChange"
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="气泡">
<el-input-number
controls-position="right"
v-model="count_notok_json.count_n_qp"
style="width: 100%"
:precision="0"
@change="handleCountChange"
></el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="短">
<el-input-number
controls-position="right"
v-model="count_notok_json.count_n_d"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
:precision="0"
placeholder="气泡"
@change="handleCountChange"
></el-input-number>
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="扁">
<el-input-number
controls-position="right"
v-model="count_notok_json.count_n_b"
controls-position="right"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
:precision="0"
placeholder="扁"
@change="handleCountChange"
></el-input-number>
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="">
<el-form-item label="其他">
<el-input-number
v-model="count_notok_json.count_n_qt"
controls-position="right"
v-model="count_notok_json.count_n_swen"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
:precision="0"
placeholder="其他"
@change="handleCountChange"
></el-input-number>
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="裂">
<el-form-item label="备注">
<el-input
v-model="form.note"
tyle="width:100%"
placeholder="备注"
></el-input>
</el-form-item>
</el-col>
</el-row>
<!-- 10车间 -->
<el-row v-if="deptName == '10车间'">
<el-col :md="12" :sm="24">
<el-form-item label="椭圆/弯曲">
<el-input-number
v-model="count_notok_json.count_n_wq"
controls-position="right"
v-model="count_notok_json.count_n_l"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
:precision="0"
placeholder="椭圆/弯曲"
@change="handleCountChange"
></el-input-number>
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="豁">
<el-form-item label="条纹">
<el-input-number
v-model="count_notok_json.count_n_tw"
controls-position="right"
v-model="count_notok_json.count_n_h"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
:precision="0"
placeholder="条纹"
@change="handleCountChange"
></el-input-number>
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="">
<el-form-item label="断裂">
<el-input-number
v-model="count_notok_json.count_n_dl"
controls-position="right"
v-model="count_notok_json.count_n_q"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
:precision="0"
placeholder="断裂"
@change="handleCountChange"
></el-input-number>
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="偏壁">
<el-input-number
v-model="count_notok_json.count_n_pb"
controls-position="right"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
placeholder="偏壁"
@change="handleCountChange"
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="大小头">
<el-input-number
v-model="count_notok_json.count_n_dxt"
controls-position="right"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
placeholder="大小头"
@change="handleCountChange"
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="结石">
<el-input-number
v-model="count_notok_json.count_n_js"
controls-position="right"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
placeholder="结石"
@change="handleCountChange"
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="气线">
<el-input-number
v-model="count_notok_json.count_n_qx"
controls-position="right"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
placeholder="气线"
@change="handleCountChange"
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="其他">
<el-input-number
v-model="count_notok_json.count_n_qt"
controls-position="right"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
placeholder="其他"
@change="handleCountChange"
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="备注">
<el-input
v-model="form.note"
tyle="width:100%"
placeholder="备注"
></el-input>
</el-form-item>
</el-col>
</el-row>
<!-- 6车间 -->
<el-row v-if="deptName == '6车间'">
<el-col :md="12" :sm="24">
<el-form-item label="划伤">
<el-input-number
v-model="count_notok_json.count_n_hs"
controls-position="right"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
placeholder="划伤"
@change="handleCountChange"
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="挫伤">
<el-input-number
v-model="count_notok_json.count_n_cs"
controls-position="right"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
placeholder="挫伤"
@change="handleCountChange"
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="杂质">
<el-input-number
controls-position="right"
v-model="count_notok_json.count_n_zz"
controls-position="right"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
:precision="0"
placeholder="杂质"
@change="handleCountChange"
></el-input-number>
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="矫正">
<el-form-item label="条纹">
<el-input-number
v-model="count_notok_json.count_n_tw"
controls-position="right"
v-model="count_notok_json.count_n_jz"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
:precision="0"
placeholder="条纹"
@change="handleCountChange"
></el-input-number>
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="锥度大">
<el-input-number
v-model="count_notok_json.count_n_zdd"
controls-position="right"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
placeholder="锥度大"
@change="handleCountChange"
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="短">
<el-input-number
v-model="count_notok_json.count_n_d"
controls-position="right"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
placeholder="短"
@change="handleCountChange"
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="炸纹">
<el-input-number
v-model="count_notok_json.count_n_zw"
controls-position="right"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
placeholder="炸纹"
@change="handleCountChange"
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="断裂">
<el-input-number
v-model="count_notok_json.count_n_dl"
controls-position="right"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
placeholder="断裂"
@change="handleCountChange"
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="气泡">
<el-input-number
v-model="count_notok_json.count_n_qp"
controls-position="right"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
placeholder="气泡"
@change="handleCountChange"
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="不亮">
<el-input-number
v-model="count_notok_json.count_n_bl"
controls-position="right"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
placeholder="不亮"
@change="handleCountChange"
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="横纹">
<el-input-number
v-model="count_notok_json.count_n_hw"
controls-position="right"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
placeholder="横纹"
@change="handleCountChange"
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="有皮">
<el-input-number
v-model="count_notok_json.count_n_yp"
controls-position="right"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
placeholder="有皮"
@change="handleCountChange"
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="爆皮">
<el-input-number
v-model="count_notok_json.count_n_bp"
controls-position="right"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
placeholder="爆皮"
@change="handleCountChange"
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="色差">
<el-input-number
v-model="count_notok_json.count_n_sc"
controls-position="right"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
placeholder="色差"
@change="handleCountChange"
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="直径大">
<el-input-number
v-model="count_notok_json.count_n_zjd"
controls-position="right"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
placeholder="直径大"
@change="handleCountChange"
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="直径小">
<el-input-number
v-model="count_notok_json.count_n_zjx"
controls-position="right"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
placeholder="直径小"
@change="handleCountChange"
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="气线">
<el-input-number
v-model="count_notok_json.count_n_qx"
controls-position="right"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
placeholder="气线"
@change="handleCountChange"
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="结石">
<el-input-number
v-model="count_notok_json.count_n_js"
controls-position="right"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
placeholder="结石"
@change="handleCountChange"
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="椭圆度大">
<el-input-number
v-model="count_notok_json.count_n_tydd"
controls-position="right"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
placeholder="椭圆度大"
@change="handleCountChange"
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="水雾">
<el-input-number
v-model="count_notok_json.count_n_sw"
controls-position="right"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
placeholder="水雾"
@change="handleCountChange"
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="壁厚偏差大">
<el-input-number
v-model="count_notok_json.count_n_bhpcd"
controls-position="right"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
placeholder="壁厚偏差大"
@change="handleCountChange"
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="弯">
<el-input-number
v-model="count_notok_json.count_n_wq"
controls-position="right"
:min="0"
:step="1"
:step-strictly="true"
style="width: 100%"
placeholder="弯"
@change="handleCountChange"
>
</el-input-number>
</el-form-item>
</el-col>
<el-col :md="12" :sm="24">
<el-form-item label="备注">
<el-input
v-model="form.note"
tyle="width:100%"
placeholder="备注"
></el-input>
</el-form-item>
</el-col>
</el-row>
@ -213,6 +724,7 @@ export default {
emits: ["success", "closed"],
data() {
return {
deptName: "",
mode:'',
loading: false,
form: {
@ -226,22 +738,46 @@ export default {
},
count_rate:100,
count_notok_json:{
count_n_w: 0,
count_n_qp: 0,
count_n_hs: 0,
count_n_cs:0,
count_n_zz: 0,
count_n_tw: 0,
count_n_zdd: 0,
count_n_d: 0,
count_n_b: 0,
count_n_swen: 0,
count_n_l: 0,
count_n_h: 0,
count_n_q:0,
count_n_zz:0,
count_n_jz: 0
count_n_zw: 0,
count_n_dl: 0,
count_n_qp:0,
count_n_bl:0,
count_n_hw: 0,
count_n_yp: 0,
count_n_bp: 0,
count_n_sc: 0,
count_n_zjd: 0,
count_n_zjx: 0,
count_n_qx: 0,
count_n_js: 0,
count_n_tydd: 0,
count_n_sw: 0,
count_n_bhpcd: 0,
count_n_wq: 0,
//7
count_n_zt:0,
count_n_b:0,
count_n_qt:0,
//10
count_n_pb:0,
count_n_dxt:0,
},
rules: {
test_date: [{required: true,message: "请选择检验日期",trigger: "blur"}],
batch: [{required: true,message: "请选择物料批次",trigger: "blur"}],
test_user: [{required: true,message: "请选择物料批次",trigger: "blur"}],
},
typeOption:[
{name:'全检',value:20},
{name:'抽检',value:10},
],
originData:{},
userList : [],
selectionFilters: [],
batchCount:null,
@ -256,17 +792,29 @@ export default {
},
methods: {
//
open() {
open(deptName) {
this.deptName = deptName;
this.visible = true;
return this;
},
//
setData(data) {
this.form.wm = data.id;
this.form.count_notok = 0;
this.count_rate = 100;
this.wm_batch = data.batch;
this.form.count = this.form.count_ok = data.count;
setData(data,) {
let that = this;
Object.assign(that.originData, data);
that.form.wm = data.id;
that.count_rate = 100;
that.wm_batch = data.batch;
that.form.count_notok = 0;
that.form.count = that.form.count_ok = data.count;
},
handleTypeChange(){
if(this.form.type2==10){//
this.form.count_sampling = this.originData.count;
this.form.count_sampling_ok = this.originData.count;
}else if(this.form.type2==20){
this.form.count = this.originData.count;
this.form.count_ok = this.originData.count;
}
},
getUsers(){
let that = this;
@ -276,21 +824,43 @@ export default {
},
handleCountChange(){
this.form.count_notok =
this.count_notok_json.count_n_w+
this.count_notok_json.count_n_qp+
this.count_notok_json.count_n_d+
this.count_notok_json.count_n_b+
this.count_notok_json.count_n_swen+
this.count_notok_json.count_n_l+
this.count_notok_json.count_n_h+
this.count_notok_json.count_n_q+
this.count_notok_json.count_n_hs+
this.count_notok_json.count_n_cs+
this.count_notok_json.count_n_zz+
this.count_notok_json.count_n_jz;
this.count_notok_json.count_n_tw+
this.count_notok_json.count_n_zdd+
this.count_notok_json.count_n_d+
this.count_notok_json.count_n_zw+
this.count_notok_json.count_n_dl+
this.count_notok_json.count_n_qp+
this.count_notok_json.count_n_bl+
this.count_notok_json.count_n_hw+
this.count_notok_json.count_n_yp+
this.count_notok_json.count_n_bp+
this.count_notok_json.count_n_sc+
this.count_notok_json.count_n_zjd+
this.count_notok_json.count_n_zjx+
this.count_notok_json.count_n_qx+
this.count_notok_json.count_n_js+
this.count_notok_json.count_n_tydd+
this.count_notok_json.count_n_sw+
this.count_notok_json.count_n_bhpcd+
this.count_notok_json.count_n_wq
this.count_notok_json.count_n_zt
this.count_notok_json.count_n_b
this.count_notok_json.count_n_qt
this.count_notok_json.count_n_pb
this.count_notok_json.count_n_dxt;
this.handleCountNotokChange();
},
handleCountNotokChange(){
this.form.count_ok = this.form.count - this.form.count_notok;
this.count_rate = ((this.form.count_ok/this.form.count)*100).toFixed(2);
if(this.form.type2==10){//
this.form.count_sampling_ok = this.form.count_sampling - this.form.count_notok;
this.count_rate = ((this.form.count_sampling_ok/this.form.count_sampling)*100).toFixed(2);
}else if(this.form.type2==20){//
this.form.count_ok = this.form.count - this.form.count_notok;
this.count_rate = ((this.form.count_ok/this.form.count)*100).toFixed(2);
}
},
//
submit() {
@ -299,32 +869,53 @@ export default {
if (valid) {
that.isSaveing = true;
let count_notok =
that.count_notok_json.count_n_w+
that.count_notok_json.count_n_qp+
that.count_notok_json.count_n_d+
that.count_notok_json.count_n_b+
that.count_notok_json.count_n_swen+
that.count_notok_json.count_n_l+
that.count_notok_json.count_n_h+
that.count_notok_json.count_n_q+
that.count_notok_json.count_n_zz+
that.count_notok_json.count_n_jz;
that.count_notok_json.count_n_hs+
that.count_notok_json.count_n_cs+
that.count_notok_json.count_n_zz+
that.count_notok_json.count_n_tw+
that.count_notok_json.count_n_zdd+
that.count_notok_json.count_n_d+
that.count_notok_json.count_n_zw+
that.count_notok_json.count_n_dl+
that.count_notok_json.count_n_qp+
that.count_notok_json.count_n_bl+
that.count_notok_json.count_n_hw+
that.count_notok_json.count_n_yp+
that.count_notok_json.count_n_bp+
that.count_notok_json.count_n_sc+
that.count_notok_json.count_n_zjd+
that.count_notok_json.count_n_zjx+
that.count_notok_json.count_n_qx+
that.count_notok_json.count_n_js+
that.count_notok_json.count_n_tydd+
that.count_notok_json.count_n_sw+
that.count_notok_json.count_n_bhpcd+
that.count_notok_json.count_n_wq+
that.count_notok_json.count_n_zt
that.count_notok_json.count_n_b
that.count_notok_json.count_n_qt
that.count_notok_json.count_n_pb
that.count_notok_json.count_n_dxt;
if(count_notok>that.form.count_notok){
that.$notify.error("不合格数量有问题");
that.isSaveing = false;
}else{
that.form.count_ok = that.form.count - that.form.count_notok;
if(that.form.type2==10){//
that.form.count_sampling_ok = that.form.count_sampling - that.form.count_notok;
}else{//
that.form.count_ok = that.form.count - that.form.count_notok;
}
that.form.count_notok_json = that.count_notok_json;
console.log('that.form',that.form)
that.$API.qm.ftestwork.create.req(that.form).then((res) => {
that.$API.qm.ftestwork.submit.req(res.id).then((res) => {
that.isSaveing = false;
that.visible = false;
that.$emit("success");
that.$message.success("操作成功");
})
}).catch( err=>{
that.isSaveing = false;
that.visible = false;
that.$emit("success");
that.$message.success("操作成功");
})
}).catch( err=>{
that.isSaveing = false;
})
}
}

View File

@ -568,7 +568,6 @@
row-key="id"
:params="paramsWm"
stripe
hidePagination
>
<el-table-column label="物料名" prop="material">
<template #default="scope">{{
@ -601,6 +600,12 @@
width="80"
>
</el-table-column>
<el-table-column label="操作" fixed="right" align="right" width="55">
<template #default="scope">
<el-link link type="primary" @click.stop="inm_test(scope.row)">检验</el-link>
<el-link link type="success" @click.stop="inm_record(scope.row)">记录</el-link>
</template>
</el-table-column>
</scTable>
</el-main>
</el-container>
@ -666,6 +671,19 @@
@choseChange="choseChange"
></materials>
</el-dialog>
<middle-dialog
ref="inmTestDialog"
v-if="dialogInmTest"
@closed="dialogInmTest = false">
</middle-dialog>
<check-drawer
ref="checkDrawers"
v-if="visibleCheckDrawer"
:wm="wm"
:deptName="activeName"
@closed="visibleCheckDrawer = false"
>
</check-drawer>
</el-container>
</template>
@ -674,12 +692,16 @@ import handoverDialog from "./handover_form.vue";
import saveDialog from "./worktask_form.vue";
import showDrawer from "./mlog_drawer.vue";
import materials from "./../mtm/materials.vue";
import checkDrawer from "./check_drawer.vue";
import middleDialog from "./middle_test.vue";
export default {
components: {
saveDialog,
showDrawer,
materials,
handoverDialog
handoverDialog,
middleDialog,
checkDrawer,
},
data() {
return {
@ -717,6 +739,7 @@ export default {
material: "",
},
materialType: "wm",
wm:'',
mgroup: "",
mlogId: "",
mtaskDate: "",
@ -725,6 +748,8 @@ export default {
queryMtaskState: false,
materialsVisible: false,
dialogHandover:false,
dialogInmTest:false,
visibleCheckDrawer:false,
};
},
mounted() {
@ -962,6 +987,20 @@ export default {
})
},
handleHandoverSuccess(){},
//
inm_record(row){
this.wm = row.id;
this.visibleCheckDrawer = true;
this.$nextTick(() => {
this.$refs.checkDrawers.open();
});
},
inm_test(row){
this.dialogInmTest = true;
this.$nextTick(() => {
this.$refs.inmTestDialog.open('10车间').setData(row);
})
},
},
};
</script>

View File

@ -323,6 +323,7 @@
<el-table-column label="操作" fixed="right" align="right" width="55">
<template #default="scope">
<el-link link type="primary" @click.stop="inm_test(scope.row)">检验</el-link>
<el-link link type="success" @click.stop="inm_record(scope.row)">记录</el-link>
</template>
</el-table-column>
</scTable>
@ -344,6 +345,14 @@
@closed="visibleDrawer = false"
>
</showDrawer>
<check-drawer
ref="checkDrawers"
v-if="visibleCheckDrawer"
:wm="wm"
deptName="6车间"
@closed="visibleCheckDrawer = false"
>
</check-drawer>
<el-dialog title="选择物料" v-model="materialsVisible" width="90%">
<materials
style="height: 500px"
@ -362,16 +371,19 @@
</template>
<script>
import checkDrawer from "./check_drawer.vue";
import middleDialog from "./middle_test.vue";
import handoverDialog from "./handover_form.vue";
import showDrawer from "./mlog_dept6_detail.vue";
import materials from "./../mtm/materials.vue";
export default {
components: {
showDrawer,
materials,
showDrawer,
middleDialog,
handoverDialog
checkDrawer,
handoverDialog,
},
data() {
return {
@ -428,6 +440,7 @@ export default {
visibleDrawer: false,
dialogHandover:false,
dialogInmTest:false,
visibleCheckDrawer:false,
};
},
mounted() {
@ -540,9 +553,17 @@ export default {
inm_test(row){
this.dialogInmTest = true;
this.$nextTick(() => {
this.$refs.inmTestDialog.open().setData(row);
this.$refs.inmTestDialog.open('6车间').setData(row);
})
},
//
inm_record(row){
this.wm = row.id;
this.visibleCheckDrawer = true;
this.$nextTick(() => {
this.$refs.checkDrawers.open();
});
},
},
};
</script>

View File

@ -538,7 +538,6 @@
row-key="id"
:params="paramsWm"
stripe
hidePagination
>
<el-table-column label="物料名" prop="material">
<template #default="scope">{{
@ -571,6 +570,12 @@
width="80"
>
</el-table-column>
<el-table-column label="操作" fixed="right" align="right" width="55">
<template #default="scope">
<el-link link type="primary" @click.stop="inm_test(scope.row)">检验</el-link>
<el-link link type="success" @click.stop="inm_record(scope.row)">记录</el-link>
</template>
</el-table-column>
</scTable>
</el-main>
</el-container>
@ -613,9 +618,25 @@
@choseChange="choseChange"
></materials>
</el-dialog>
<middle-dialog
ref="inmTestDialog"
v-if="dialogInmTest"
@closed="dialogInmTest = false">
</middle-dialog>
<check-drawer
ref="checkDrawers"
v-if="visibleCheckDrawer"
:wm="wm"
:deptName="activeName"
@closed="visibleCheckDrawer = false"
>
</check-drawer>
</el-container>
</template>
<script>
import checkDrawer from "./check_drawer.vue";
import middleDialog from "./middle_test.vue";
import handoverDialog from "./handover_form.vue";
import saveDialog from "./worktask_form.vue";
import showDrawer from "./mlog_drawer.vue";
@ -626,6 +647,8 @@ export default {
saveDialog,
showDrawer,
materials,
middleDialog,
checkDrawer,
},
data() {
return {
@ -661,11 +684,14 @@ export default {
},
materialType: "wm",
mlogs: [],
wm:'',
mlogId: "",
mgroup: "",
material_out: "",
material_model: "",
dialogInmTest:false,
materialsVisible: false,
visibleCheckDrawer:false,
};
},
mounted() {
@ -865,6 +891,20 @@ export default {
this.$refs.handoverDialog.open('add');
})
},
//
inm_record(row){
this.wm = row.id;
this.visibleCheckDrawer = true;
this.$nextTick(() => {
this.$refs.checkDrawers.open();
});
},
inm_test(row){
this.dialogInmTest = true;
this.$nextTick(() => {
this.$refs.inmTestDialog.open('7车间').setData(row);
})
},
},
};
</script>