Crunchy
2024-05-06 1f4c79169a0d3ef46f2430b61d4999e1be6261b3
src/views/quality/processInspect/processInspect-form.vue
@@ -288,6 +288,54 @@
                        </el-table-column>
                        </el-table>
                    </el-tab-pane>
                    <el-tab-pane label="附件">
                        <el-table :data="configFileTableData" height="400px">
                            <el-table-column
                            prop="orderNumber"
                            align="center"
                            label="订单号"
                            show-overflow-tooltip
                            >
                            </el-table-column>
                            <el-table-column
                            prop="originalFileName"
                            align="center"
                            label="原文件名"
                            width="200"
                            >
                            </el-table-column>
                            <el-table-column prop="fileName" align="center" label="文件后缀">
                            </el-table-column>
                            <el-table-column prop="createUser" align="center" label="上传人">
                            </el-table-column>
                            <el-table-column
                            prop="createTime"
                            align="center"
                            label="上传时间"
                            show-overflow-tooltip
                            >
                            </el-table-column>
                            <el-table-column prop="updateUser" align="center" label="更新人">
                            </el-table-column>
                            <el-table-column
                            prop="updateTime"
                            align="center"
                            label="更新时间"
                            show-overflow-tooltip
                            >
                            </el-table-column>
                            <el-table-column fixed="right" align="center" label="操作">
                            <template slot-scope="scope">
                                <el-button
                                @click="downloadProcessConfigFiles(scope.row)"
                                type="text"
                                size="small"
                                >下载</el-button
                                >
                            </template>
                            </el-table-column>
                        </el-table>
                    </el-tab-pane>
                </el-tabs>
            </div>
            <div class="finishedProduct-result">
@@ -343,6 +391,27 @@
            <el-button type="primary" @click="deviceCode = false">确 定</el-button>
        </span>
        </el-dialog>
        <el-dialog
        title="不合格信息"
        :visible.sync="unqualified"
        width="30%">
        <div style="height: 30vh;width: 100%;">
            <el-form :model="ruleForm" :rules="unqualifiedRules" ref="ruleForm" label-width="100px" class="demo-ruleForm">
                <el-form-item label="不合格数量" prop="number">
                    <el-input v-model="ruleForm.number"></el-input>
                </el-form-item>
                <el-form-item label="批次号" prop="outBatchNo">
                <el-select v-model="ruleForm.outBatchNo" multiple placeholder="请选择批次号" style="width: 100%;">
                    <el-option :label="m" :value="m" v-for="(m,i) in outBatchNoList" :key="i"></el-option>
                </el-select>
                </el-form-item>
            </el-form>
        </div>
        <span slot="footer" class="dialog-footer">
        <el-button @click="unqualified = false">取 消</el-button>
        <el-button type="primary" :loading="loading" @click="handleSubmit">确 定</el-button>
        </span>
        </el-dialog>
    <processPart :paramObj="paramObj" :currshowlist.sync="workshop" />
    </div>
</template>
@@ -356,23 +425,43 @@
    updateProcessInsProduct,
    updateProcessInsProduct2,
    updateProcessInspectsById,
    selOutBatchNo,
} from '@/api/quality/processInspect'
import {
    getProcessConfigFiles,
    deleteProcessConfigFile,
    downloadProcessConfigFile
 } from '@/api/quality/attachment'
import { getProcessConfigFile } from '@/api/plan/manufacturingorder'
import processPart from '@/views/common/processinspect-part'
import { selectDevice } from '@/api/quality/processInspect'
import qrCodeApp from '@/views/common/qrCodeApp'
import { validatePositiveInteger } from '@/util/validate'
import { getStore } from '@/util/store'
import * as customerorder from '@/api/plan/customerorder'
export default {
    components:{
        qrCodeApp,processPart
    },
    data() {
        return {
            outBatchNoList:[],
            unqualifiedInfo:null,
            loading:false,
            ruleForm:{
                number:'',
                outBatchNo:[]
            },
            unqualifiedRules:{
                number: [
                    { required: true, message: '请输入不合格数量', trigger: 'blur' },
                    { pattern: /^\d+$/, message: '请输入数字', trigger: 'blur' }
                ],
                outBatchNo: [
                    { required: true, message: '请选择批次号', trigger: 'change' }
                ],
            },
            unqualified:false,
            progrecessFileLoading: false,
            processConfigFileTableData: [],
            headers: {
@@ -426,6 +515,8 @@
            },
            inspectionItems: [], // 新增检验项目表格
            inspectionResultForm: [],
            configFileTableData:[],
            dataForm:null
        }
    },
    watch: {
@@ -446,8 +537,29 @@
            val == undefined ? this.resultVal = null : this.resultVal = val
        }
        this.init()
        this.selOutBatchNo()
    },
    methods: {
        selOutBatchNo(){
            selOutBatchNo({id:this.$route.query.id}).then((res)=>{
                this.outBatchNoList = res.data.data
            })
        },
        getProcessConfigFile(){
            getProcessConfigFile({
            orderNumber: this.dataForm.orderNumber,
            lineNumber: this.dataForm.customerNo
            }).then((res)=>{
                this.configFileTableData = res.data.data
            })
        },
        downloadProcessConfigFiles(row){
            customerorder.downloadProcessConfigFile(
                row.fileName,
                row.bucketName,
                row.originalFileName
            )
        },
        saveTable(){
            let processInsProduct = [];
            this.inspectionItems.forEach((item) => {
@@ -584,27 +696,30 @@
                number: 0,
                result: this.inspectionResultForm[0].result
            }
            this.unqualifiedInfo = obj;
            if (pro > 0) {
                this.$prompt('请输入不合格数量', '不合格数量', {
                    confirmButtonText: '确定',
                    cancelButtonText: '取消',
                    inputPattern: /^\d+$/,
                    inputErrorMessage: '请输入正确数字格式'
                }).then(({ value }) => {
                    obj.number = value
                    updateProcessInspectsById(obj).then(res => {
                        let data = res.data.data
                        if (data) {
                            if (data.indexOf("成功") > 0) {
                                this.$message.success(data);
                                this.checkTestState()
                            } else {
                                this.$message.warning(data);
                            }
                            return
                        }
                    });
                }).catch(() => { });
                this.unqualified = true;
                this.$refs.ruleForm.resetFields();
                // this.$prompt('请输入不合格数量', '不合格数量', {
                //     confirmButtonText: '确定',
                //     cancelButtonText: '取消',
                //     inputPattern: /^\d+$/,
                //     inputErrorMessage: '请输入正确数字格式'
                // }).then(({ value }) => {
                //     obj.number = value
                //     updateProcessInspectsById(obj).then(res => {
                //         let data = res.data.data
                //         if (data) {
                //             if (data.indexOf("成功") > 0) {
                //                 this.$message.success(data);
                //                 this.checkTestState()
                //             } else {
                //                 this.$message.warning(data);
                //             }
                //             return
                //         }
                //     });
                // }).catch(() => { });
            } else {
                updateProcessInspectsById(obj).then(res => {
                    let data = res.data.data
@@ -620,6 +735,32 @@
                });
            }
            this.init()
        },
        handleSubmit(){
            this.$refs.ruleForm.validate((valid) => {
                if (valid) {
                    this.loading = true;
                    let obj = {number:this.ruleForm.number,outBatchNo:this.ruleForm.outBatchNo.join(','),...this.unqualifiedInfo};
                    updateProcessInspectsById(obj).then(res => {
                        let data = res.data.data
                        if (data) {
                            if (data.indexOf("成功") > 0) {
                                this.$message.success(data);
                                this.$refs.ruleForm.resetFields();
                                this.unqualified = false;
                                this.checkTestState()
                                this.init()
                            } else {
                                this.$message.warning(data);
                            }
                            return
                        }
                        this.loading = false;
                    });
                } else {
                    return false;
                }
            });
        },
        checkTestState() {
            let resultVal = '1'
@@ -642,6 +783,7 @@
                queryById(id).then(res => {
                    let result = res.data.data
                    this.processInspectVo.moNo = result.moNo
                    this.dataForm = result;
                    this.processInspectVo.operationTaskId = result.technologyOperationName
                    this.processInspectVo.proInsNo = result.proInsNo
                    this.processInspectVo.projectName = result.projectName
@@ -666,7 +808,7 @@
                                if (obj.inspectionValue) {
                                    arr = obj.inspectionValue.split(",")
                                }
                                obj.empiricalValueAddss = arr
                                this.$set(obj, "empiricalValueAddss", arr)
                                if(!obj.inote){
                                    obj.inote = null
                                }
@@ -699,6 +841,7 @@
                        userName: Array.from(new Set(userList)).join(","),
                        result: this.resultVal == null ? rVal : this.resultVal,
                    }]
                    this.getProcessConfigFile()
                }).catch(error => {
                    console.log(error)
                })
@@ -810,6 +953,7 @@
                            this.processInspectVo.orderNumber = data.orderNumber
                            this.processInspectVo.projectName = data.projectName
                            this.processInspectVo.customerName = data.customerName
                            this.processInspectVo.customerNo = data.customerNo
                            this.processInspectVo.material = data.material
                            this.processInspectVo.specs = data.specs
                            this.processInspectVo.unit = data.unit