Crunchy
2024-05-08 9b18523c852a24806937ebb4de3a231abef9173d
Merge remote-tracking branch 'origin/master'
已修改4个文件
149 ■■■■ 文件已修改
src/api/quality/unqualifiedprocess.js 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/finishedProductInspection/finishedProduct-form.vue 55 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/processInspect/processInspect-form.vue 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/processconfiguration/index.vue 70 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/quality/unqualifiedprocess.js
@@ -216,4 +216,12 @@
    responseType : 'blob',
    params: query
  })
}
}
export function chooseMoRoutingOperation(query) {
    return request({
      url: '/mes/qualityInspectUnaccepted/chooseMoRoutingOperation',
      method: 'get',
      params: query
    })
  }
src/views/quality/finishedProductInspection/finishedProduct-form.vue
@@ -620,22 +620,31 @@
                result: this.inspectionResultForm[0].result
            }
            if (pro > 0) {
                this.$prompt('请输入不合格数量', '不合格数量', {
                    confirmButtonText: '确定',
                    cancelButtonText: '取消',
                    inputPattern: /^\d+$/,
                    inputErrorMessage: '请输入正确数字格式'
                }).then(({ value }) => {
                    obj.number = value
                    updateFinishedInspectById(obj).then(res => {
                        if(res.data.data.indexOf("成功") > 0){
                            this.$message.success("上报成功");
                            this.checkTestState()
                        }else{
                            this.$message.warning(res.data.data)
                        }
                    });
                }).catch(() => {});
                obj.number = 1;
                updateFinishedInspectById(obj).then(res => {
                    if(res.data.data.indexOf("成功") > 0){
                        this.$message.success("上报成功");
                        this.checkTestState()
                    }else{
                        this.$message.warning(res.data.data)
                    }
                });
                // this.$prompt('请输入不合格数量', '不合格数量', {
                //     confirmButtonText: '确定',
                //     cancelButtonText: '取消',
                //     inputPattern: /^\d+$/,
                //     inputErrorMessage: '请输入正确数字格式'
                // }).then(({ value }) => {
                //     obj.number = value
                //     updateFinishedInspectById(obj).then(res => {
                //         if(res.data.data.indexOf("成功") > 0){
                //             this.$message.success("上报成功");
                //             this.checkTestState()
                //         }else{
                //             this.$message.warning(res.data.data)
                //         }
                //     });
                // }).catch(() => {});
            }else{
                updateFinishedInspectById(obj).then(res => {
                    if(res.data.data.indexOf("成功") > 0){
@@ -696,10 +705,14 @@
                                if(obj.inspectionValue){
                                    arr = obj.inspectionValue.split(",")
                                }
                                obj.empiricalValueAddss = arr
                                this.$set(obj,'empiricalValueAddss',arr)
                                // obj.empiricalValueAddss = arr
                                if(obj.note){
                                        snote=obj.inote
                                    }
                                    // obj.inote=obj.note
                                    this.$set(obj,'inote',obj.note)
                                }else{
                                    this.$set(obj,'inote',null)
                                }
                                if(arr.length > this.empiricalValueAdd){
                                    this.empiricalValueAdd = arr.length
                                }
@@ -864,7 +877,7 @@
                                arr.splice((arr.length-1),1)
                                let obj = {
                                    devideId: i.eId,
                                    fpid: row.iid,
                                    fpid: i.iid,
                                    inspectionValue: arr.join(","),
                                    note : i.inote
                                }
@@ -885,7 +898,7 @@
            } else {
                if (this.empiricalValueAddMaxNumber != this.empiricalValueAdd - 1) {
                    this.empiricalValueAdd = this.empiricalValueAdd - 1;
                    // this.changeRowResult()
                    this.changeRowResult()
                    this.inspectionItems.forEach(i => {
                        i.empiricalValueAddss.splice(this.empiricalValueAdd, 1);
                    });
src/views/quality/processInspect/processInspect-form.vue
@@ -401,7 +401,7 @@
                    <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-select v-model="ruleForm.outBatchNo" multiple placeholder="请选择批次号" style="width: 100%;" :multiple-limit="Number(ruleForm.number)">
                    <el-option :label="m" :value="m" v-for="(m,i) in outBatchNoList" :key="i"></el-option>
                </el-select>
                </el-form-item>
@@ -458,7 +458,7 @@
                    { pattern: /^\d+$/, message: '请输入数字', trigger: 'blur' }
                ],
                outBatchNo: [
                    { required: true, message: '请选择批次号', trigger: 'change' }
                    { required: true, message: '请选择批次号', trigger: 'change' },
                ],
            },
            unqualified:false,
@@ -739,6 +739,10 @@
        handleSubmit(){
            this.$refs.ruleForm.validate((valid) => {
                if (valid) {
                    if(this.ruleForm.outBatchNo.length!=this.ruleForm.number){
                        this.$message.error(`请选择${this.ruleForm.number}个批次号`)
                        return
                    }
                    this.loading = true;
                    let obj = {number:this.ruleForm.number,outBatchNo:this.ruleForm.outBatchNo.join(','),...this.unqualifiedInfo};
                    updateProcessInspectsById(obj).then(res => {
@@ -809,8 +813,10 @@
                                    arr = obj.inspectionValue.split(",")
                                }
                                this.$set(obj, "empiricalValueAddss", arr)
                                this.$set(obj, "inote", obj.inote)
                                if(!obj.inote){
                                    obj.inote = null
                                    // obj.inote = null
                                    this.$set(obj, "inote", null)
                                }
                                if (arr.length > this.empiricalValueAdd) {
                                    this.empiricalValueAdd = arr.length
@@ -1001,7 +1007,7 @@
            } else {
                if (_than.empiricalValueAddMaxNumber != _than.empiricalValueAdd - 1) {
                    _than.empiricalValueAdd = _than.empiricalValueAdd - 1;
                    // _than.changeRowResult()
                    _than.changeRowResult()
                    _than.inspectionItems.forEach(i => {
                        if(i.children){
                            i.children.forEach(ele=>{
src/views/quality/processconfiguration/index.vue
@@ -39,12 +39,30 @@
                </div>
                <div v-if="type === '产品检验' ">
                    <el-radio-group v-model="checkList">
                      <el-radio label="返修">返修</el-radio>
                      <el-radio label="接收">接收</el-radio>
                      <el-radio label="降级使用">降级使用</el-radio>
                      <el-radio label="报废">报废</el-radio>
                      <el-radio label="降为他用">降为他用</el-radio>
                        <el-row>
                          <div style="padding: 20px;">
                            <el-radio label="返修">返修</el-radio>
                            <el-radio label="接收">接收</el-radio>
                            <el-radio label="降级使用">降级使用</el-radio>
                            <el-radio label="报废">报废</el-radio>
                        </div>
                          <div style="padding: 20px;">
                            <el-radio label="返工">返工</el-radio>
                            <el-radio label="降为他用">降为他用</el-radio>
                        </div>
                        </el-row>
                    </el-radio-group>
                    <div class="search" style="margin-left: 20px;" v-if="checkList=='返修'">
                        <label style="margin-right: 10px;">工序</label>
                        <el-select v-model="moRoutingOperationId" placeholder="请选择">
                            <el-option
                            v-for="item in listOptions"
                            :key="item.id"
                            :label="item.name"
                            :value="item.id">
                            </el-option>
                        </el-select>
                    </div>
                </div>
                <div v-if="type ===  '过程检验'">
                    <el-radio-group v-model="checkList">
@@ -61,6 +79,17 @@
                          </div>
                    </el-row>
                    </el-radio-group>
                    <div class="search" style="margin-left: 20px;" v-if="checkList=='返修'">
                        <label style="margin-right: 10px;">工序</label>
                        <el-select v-model="moRoutingOperationId" placeholder="请选择">
                            <el-option
                            v-for="item in listOptions"
                            :key="item.id"
                            :label="item.name"
                            :value="item.id">
                            </el-option>
                        </el-select>
                    </div>
                </div>
            </el-form>
            <span slot="footer" >
@@ -77,7 +106,8 @@
  UnqualifiedList,
  pullInsUnapi,
  AuditSuggestion,
  exportData
  exportData,
  chooseMoRoutingOperation,
} from '@/api/quality/unqualifiedprocess'
import TableForm from './table-form'
import { mapGetters } from 'vuex'
@@ -89,6 +119,7 @@
    return {
      queryParam: {},
      checkList: "",
      moRoutingOperationId:"",
      // WayIdea:'',
      UserId:{},
      type:'',
@@ -289,6 +320,7 @@
          minWidth: 100
        }
      },
      listOptions:[],
      materialType: [{label:'原材料检验',value:'原材料检验'},{label:'过程检验',value:'过程检验'},{label:'产品检验',value:'产品检验'},{label:'包装检验',value:'包装检验'}],
      StateList: [{label:'全部',value:''},{label:'已提交审核',value:'1'},{label:'待处理',value:'0'},{label:'已完成',value:'2'}],
      insStateList: [{label:'其他',value:''},{label:'瑕疵',value:'1'}],
@@ -302,6 +334,13 @@
    ...mapGetters(['permissions'])
  },
  watch: {
    checkList(val){
        if(val!='返修'){
            this.moRoutingOperationId = null
        }
    }
  },
  created() {
    // this.getType()
    let arr = []
@@ -311,10 +350,11 @@
            type: 'text',
            size: 'small',
            fun: this.Submitreview,
            show: {
                key: 'state',
                val: [0]
            }
            // show: {
            //     key: 'state',
            //     val: [0]
            // },
            showFun: (row)=>{return row.type == '原材料检验'&&row.state==0}
          })
    }
    if(this.permissions.quality_processconfiguration_result){
@@ -329,6 +369,11 @@
    this.table.operator = arr.length>0 ? arr : null
  },
  methods: {
    chooseMoRoutingOperation(id){
        chooseMoRoutingOperation({id}).then(res =>{
            this.listOptions = res.data.data
        })
    },
    getQueryParam(data){
      this.queryParam = data
    },
@@ -361,17 +406,20 @@
      this.UserId = row.id
      this.type = row.type
      this.dialogVisible = true;
      this.chooseMoRoutingOperation(row.id)
    },
    WayCancel(){
      this.dialogVisible = false
      this.checkList = null
      this.moRoutingOperationId = null
      this.WayIdea = null
    },
    WaySure(){
      AuditSuggestion({id:this.UserId,way:this.checkList}).then(
      AuditSuggestion({id:this.UserId,way:this.checkList,moRoutingOperationId:Number(this.moRoutingOperationId)*1}).then(
        res =>{
          this.checkList = null
          this.moRoutingOperationId = null
          this.WayIdea = null
          this.$refs.processconfiguration.refreshData()
          ;})