licp
2024-05-13 7b5549dd6115d42eda331916fdb38ac806169c9b
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">
@@ -52,15 +70,26 @@
                          <div style="padding: 20px;">
                          <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-radio label="报废">报废</el-radio>
                          </div>
                          <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>
                    </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" >
@@ -73,11 +102,12 @@
</template>
<script>
import {
import {
  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:'',
@@ -138,6 +169,27 @@
                  return this.materialType
            // render: { fun: this.addOrUpdateHandle }
              }
          },
          {
              minWidth: '120',
              prop: 'state',
              label: '状态',
              isTrue: true,
              isSearch: true,
              searchInfoType: 'select',
              formatter: this.formatInsState,
              optList: () => {
                  return this.StateList
              }
          },
          // 检验编号
          {
            minWidth: '140',
            prop: 'inspectNo',
            label: '检验编号',
            isTrue: true,
            isSearch: true,
            searchInfoType: 'text',
          },
          // 产品名称
          {
@@ -224,18 +276,7 @@
               searchInfoType: 'datetimerange',
               formatter: this.formatDateTime,
           },
          {
              minWidth: '120',
              prop: 'state',
              label: '状态',
              isTrue: true,
              isSearch: true,
              searchInfoType: 'select',
              formatter: this.formatInsState,
              optList: () => {
                  return this.StateList
              }
          },
          // {
          //   minWidth: '120',
          //   prop: '',
@@ -263,35 +304,16 @@
          //     return this.processModeOptions
          //   }
          // },
        ],
        toolbar: [
          {
            text: '导出',
            type: 'primary',
            fun: this.handleExport
          },
        ],
        operator: [
          // {
          //   text: '删除',
          //   type: 'text',
          //   size: 'small',
          //   fun: this.deleteHandle
          //   text: '导出',
          //   type: 'primary',
          //   fun: this.handleExport
          // },
          {
            text: '提交审核',
            type: 'text',
            size: 'small',
            fun: this.Submitreview
          },
          {
            text: '审核结果',
            type: 'text',
            size: 'small',
            fun: this.AuditResult
          }
        ],
        operator: null,
        operatorConfig: {
          fixed: 'right',
          label: '操作',
@@ -299,8 +321,9 @@
          minWidth: 100
        }
      },
      listOptions:[],
      materialType: [{label:'原材料检验',value:'原材料检验'},{label:'过程检验',value:'过程检验'},{label:'产品检验',value:'产品检验'},{label:'包装检验',value:'包装检验'}],
      StateList: [{label:'全部',value:''},{label:'已提交审核',value:'1'},{label:'待处理',value:'0'},{label:'已处理',value:'2'}],
      StateList: [{label:'全部',value:''},{label:'已提交审核',value:'1'},{label:'待处理',value:'0'},{label:'已完成',value:'2'}],
      insStateList: [{label:'其他',value:''},{label:'瑕疵',value:'1'}],
    }
  },
@@ -312,10 +335,46 @@
    ...mapGetters(['permissions'])
  },
  watch: {
    checkList(val){
        if(val!='返修'){
            this.moRoutingOperationId = null
        }
    }
  },
  created() {
    // this.getType()
    let arr = []
    if(this.permissions.quality_processconfiguration_submit){
      arr.push({
            text: '提交审核',
            type: 'text',
            size: 'small',
            fun: this.Submitreview,
            // show: {
            //     key: 'state',
            //     val: [0]
            // },
            showFun: (row)=>{return row.type == '原材料检验'&&row.state==0}
          })
    }
    if(this.permissions.quality_processconfiguration_result){
        arr.push({
            text: '审核结果',
            type: 'text',
            size: 'small',
            fun: this.AuditResult,
            showFun: (row)=>{return row.type != '原材料检验'}
          })
    }
    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
    },
@@ -348,17 +407,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()
          ;})
@@ -370,7 +432,7 @@
        this.$refs.processconfiguration.refreshData()
       })
    },
    //状态
    formatInsState(row, column, cellValue){
            if(cellValue != undefined || cellValue != null){
@@ -381,7 +443,7 @@
                  return "<span style='color:#34BD66;'>已提交审核</span>"
                }
                if(cellValue == 2){
                  return "<span style='color:#34BD66;'>已处理</span>"
                  return "<span style='color:#34BD66;'>已完成</span>"
                }
            }
        },
@@ -392,7 +454,7 @@
            }
            return "<span style='color:#34BD66;'></span>"
        }
    },
    },
    // 获取数据列表
    getData() {
      // this.$refs.processconfiguration.getDataList()