value
2023-08-26 e6d46eff49e8dbeb41916e9b6dd8d9912a05e710
src/views/experiment/inspectionApplication/index.vue
@@ -82,7 +82,7 @@
                  label="检验类型"
                  min-width="80px">
                  <template slot-scope="scope">
                    <div v-if="scope.row.type === 0" ><span>原材料检验</span></div>
                    <div v-if="scope.row.type === 0" ><span >原材料检验</span></div>
                    <div v-if="scope.row.type === 1" ><span>委托检验</span></div>
                    <div v-if="scope.row.type === 2" ><span>成品检验</span></div>
                  </template>
@@ -154,7 +154,7 @@
                >
                  <template slot-scope="scope">
                    <el-button type="text" size="small" @click="handleClick(scope.row)">查看</el-button>
                    <el-button type="text" size="small" >提交</el-button>
                    <!-- <el-button type="text" size="small" >提交</el-button> -->
                    <el-button type="text" size="small" >作废</el-button>
                  </template>
                </el-table-column>
@@ -164,7 +164,7 @@
                <el-pagination
                  class="pagination"
                  :current-page="currentPage"
                  :page-sizes="[5, 10, 20, 30]"
                  :page-sizes="[ 10, 20, 30,40]"
                  :page-size="pageSize"
                  layout="total, sizes, prev, pager, next, jumper"
                  :total="total"
@@ -174,61 +174,63 @@
              </div>
            </div>
          </div>
          <!-- 对话框 -->
          <div class="checkType">
            <el-dialog
              title="新增检验单"
              :visible.sync="checkTypeVisible"
              width="50%"
                     top="10vh"
            >
              <div class="check-box">
                <el-radio-group v-model="type" @change="handleRadioChange">
                  <el-radio :label="0" border>原材料检验</el-radio>
                  <el-radio :label="1" border>委托检验</el-radio>
                  <el-radio :label="2" border>成品检验</el-radio>
                  <el-radio :style="`background-color: ${type==0?'rgb(170, 236, 214)':'#fff'};border-radius: 10px;`" :label="0" border>原材料检验</el-radio>
                  <el-radio :style="`background-color: ${type==1?'rgb(170, 236, 214)':'#fff'};border-radius: 10px;`" :label="1" border>委托检验</el-radio>
                  <el-radio :style="`background-color: ${type==2?'rgb(170, 236, 214)':'#fff'};border-radius: 10px;`" :label="2" border>成品检验</el-radio>
                </el-radio-group>
              </div>
              <div v-if="type === 0 || type === ''">
                <el-form :model="infoForm" ref="infoForm" class="checkTypeForm" label-position="top" label-width="200px" size="mini">
              <div v-if="type === 0">
                <el-form :model="infoForm" ref="infoForm" class="checkTypeForm" label-position="top" label-width="200px" size="medium">
                  <el-row :gutter="100">
                      <el-col :span="10">
                          <el-form-item label="来料日期:">
                              <el-input style="width: 300px" type="text" :value="infoForm.dateSurvey" placeholder="请输入来料日期" autocomplete="off" />
                              <el-input style="width: 300px" type="text" :value="infoForm.dateSurvey" placeholder="请输入来料日期" autocomplete="off" />
                          </el-form-item>
                      </el-col>
                      <el-col :span="10">
                          <el-form-item label="供应商名称:">
                              <el-input style="width: 300px" type="text" :value="infoForm.supplierName" placeholder="请输入供应商名称" autocomplete="off" />
                              <el-input style="width: 300px" type="text" :value="infoForm.supplierName" placeholder="请输入供应商名称" autocomplete="off" />
                          </el-form-item>
                      </el-col>
                      </el-row>
                      <el-row :gutter="100">
                      <el-col :span="10">
                          <el-form-item label="原材料编码:">
                              <el-input style="width: 300px" type="text" :value="infoForm.materialCoding" placeholder="请输入原材料编码" autocomplete="off" />
                              <el-input style="width: 300px" type="text" :value="infoForm.materialCoding" placeholder="请输入原材料编码" autocomplete="off" />
                          </el-form-item>
                      </el-col>
                      <el-col :span="10">
                          <el-form-item label="原材料名称:">
                              <el-input style="width: 300px" type="text" :value="infoForm.materialName" placeholder="请输入原材料名称" autocomplete="off" />
                              <el-input style="width: 300px" type="text" :value="infoForm.materialName" placeholder="请输入原材料名称" autocomplete="off" />
                          </el-form-item>
                      </el-col>
                      </el-row>
                      <el-row :gutter="100">
                      <el-col :span="10">
                          <el-form-item label="规格型号:">
                              <el-input style="width: 300px" type="text" :value="infoForm.specificationsModels" placeholder="请输入规格型号" autocomplete="off" />
                              <el-input style="width: 300px" type="text" :value="infoForm.specificationsModels" placeholder="请输入规格型号" autocomplete="off" />
                          </el-form-item>
                      </el-col>
                      <el-col :span="10">
                          <el-form-item label="单位:">
                              <el-input style="width: 300px" type="text" :value="infoForm.unit" placeholder="请输入单位" autocomplete="off" />
                              <el-input style="width: 300px" type="text" :value="infoForm.unit" placeholder="请输入单位" autocomplete="off" />
                          </el-form-item>
                      </el-col>
                      </el-row>
                      <el-row :gutter="100">
                      <el-col :span="10">
                          <el-form-item label="数量:">
                              <el-input style="width: 300px" type="text" :value="infoForm.quantity" placeholder="请输入数量" autocomplete="off" />
                              <el-input style="width: 300px" type="text" :value="infoForm.quantity" placeholder="请输入数量" autocomplete="off" />
                          </el-form-item>
                      </el-col>
                      <el-col :span="10">
@@ -251,43 +253,43 @@
                  <el-row :gutter="100">
                      <el-col :span="10">
                          <el-form-item label="来料日期:">
                              <el-input style="width: 300px" type="text" :value="commisionSelection.formTime" placeholder="请输入来料日期" autocomplete="off" />
                              <el-input style="width: 300px" type="text" :value="commisionSelection.formTime" placeholder="请输入来料日期" autocomplete="off" />
                          </el-form-item>
                      </el-col>
                      <el-col :span="10">
                          <el-form-item label="供应商名称:">
                              <el-input style="width: 300px" type="text" :value="commisionSelection.supplier" placeholder="请输入委托单位" autocomplete="off" />
                              <el-input style="width: 300px" type="text" :value="commisionSelection.supplier" placeholder="请输入委托单位" autocomplete="off" />
                          </el-form-item>
                      </el-col>
                      </el-row>
                      <el-row :gutter="100">
                      <el-col :span="10">
                          <el-form-item label="委托编号:">
                              <el-input style="width: 300px" type="text" :value="commisionSelection.mcode" placeholder="请输入样品编号" autocomplete="off" />
                              <el-input style="width: 300px" type="text" :value="commisionSelection.mcode" placeholder="请输入样品编号" autocomplete="off" />
                          </el-form-item>
                      </el-col>
                      <el-col :span="10">
                          <el-form-item label="委托名称:">
                              <el-input style="width: 300px" type="text" :value="commisionSelection.name" placeholder="请输入样品名称" autocomplete="off" />
                              <el-input style="width: 300px" type="text" :value="commisionSelection.name" placeholder="请输入样品名称" autocomplete="off" />
                          </el-form-item>
                      </el-col>
                      </el-row>
                      <el-row :gutter="100">
                      <el-col :span="10">
                          <el-form-item label="规格型号:">
                              <el-input style="width: 300px" type="text" :value="commisionSelection.specifications" placeholder="请输入型号规格" autocomplete="off" />
                              <el-input style="width: 300px" type="text" :value="commisionSelection.specifications" placeholder="请输入型号规格" autocomplete="off" />
                          </el-form-item>
                      </el-col>
                      <el-col :span="10">
                          <el-form-item label="单位:">
                            <el-input style="width: 300px" type="text" :value="commisionSelection.unit" placeholder="请输入单位" autocomplete="off" />
                            <el-input style="width: 300px" type="text" :value="commisionSelection.unit" placeholder="请输入单位" autocomplete="off" />
                          </el-form-item>
                      </el-col>
                      </el-row>
                      <el-row :gutter="100">
                      <el-col :span="10">
                          <el-form-item label="数量:">
                            <el-input style="width: 300px" type="text" :value="commisionSelection.num" placeholder="请输入数量" autocomplete="off" />
                            <el-input style="width: 300px" type="text" :value="commisionSelection.num" placeholder="请输入数量" autocomplete="off" />
                          </el-form-item>
                      </el-col>
                      <el-col :span="10">
@@ -310,43 +312,43 @@
                  <el-row :gutter="100">
                      <el-col :span="10">
                          <el-form-item label="来料日期:">
                              <el-input style="width: 300px" type="text" v-model="finishedTable.deliverydate" placeholder="请输入来料日期" autocomplete="off" />
                              <el-input style="width: 300px" type="text" v-model="finishedTable.deliverydate" placeholder="请输入来料日期" autocomplete="off" />
                          </el-form-item>
                      </el-col>
                      <el-col :span="10">
                          <el-form-item label="供应商名称:">
                              <el-input style="width: 300px" type="text" v-model="finishedTable.supplier" placeholder="请输入供应商名称" autocomplete="off" />
                              <el-input style="width: 300px" type="text" v-model="finishedTable.supplier" placeholder="请输入供应商名称" autocomplete="off" />
                          </el-form-item>
                      </el-col>
                      </el-row>
                      <el-row :gutter="100">
                      <el-col :span="10">
                          <el-form-item label="原材料编码:">
                              <el-input style="width: 300px" type="text" v-model="finishedTable.code" placeholder="请输入原材料编码" autocomplete="off" />
                              <el-input style="width: 300px" type="text" v-model="finishedTable.code" placeholder="请输入原材料编码" autocomplete="off" />
                          </el-form-item>
                      </el-col>
                      <el-col :span="10">
                          <el-form-item label="原材料名称:">
                              <el-input style="width: 300px" type="text" v-model="finishedTable.name" placeholder="请输入原材料名称" autocomplete="off" />
                              <el-input style="width: 300px" type="text" v-model="finishedTable.name" placeholder="请输入原材料名称" autocomplete="off" />
                          </el-form-item>
                      </el-col>
                      </el-row>
                      <el-row :gutter="100">
                      <el-col :span="10">
                          <el-form-item label="规格型号:">
                              <el-input style="width: 300px" type="text" v-model="finishedTable.modelandspecification" placeholder="请输入规格型号" autocomplete="off" />
                              <el-input style="width: 300px" type="text" v-model="finishedTable.modelandspecification" placeholder="请输入规格型号" autocomplete="off" />
                          </el-form-item>
                      </el-col>
                      <el-col :span="10">
                          <el-form-item label="单位:">
                              <el-input style="width: 300px" type="text" v-model="finishedTable.unit" placeholder="请输入单位" autocomplete="off" />
                              <el-input style="width: 300px" type="text" v-model="finishedTable.unit" placeholder="请输入单位" autocomplete="off" />
                          </el-form-item>
                      </el-col>
                      </el-row>
                      <el-row :gutter="100">
                      <el-col :span="10">
                          <el-form-item label="数量:">
                              <el-input style="width: 300px" type="text" v-model="finishedTable.amount" placeholder="请输入数量" autocomplete="off" />
                              <el-input style="width: 300px" type="text" v-model="finishedTable.amount" placeholder="请输入数量" autocomplete="off" />
                          </el-form-item>
                      </el-col>
                      <el-col :span="10">
@@ -366,11 +368,86 @@
              </div>
              <span slot="footer" class="dialog-footer">
                <el-button @click="checkTypeVisible = false">取 消</el-button>
                <el-button type="primary" @click="addInspection">确 定</el-button>
                <!-- <el-button type="primary" @click="addInspection">确 定</el-button> -->
                <el-button type="primary" @click="QUEding">确 定</el-button>
              </span>
            </el-dialog>
          </div>
        </div>
        <!-- 确定跳转基本库弹窗 -->
        <el-dialog
              title="标准库"
              :visible.sync="Standardframe"
              width="48%"
              >
              <!-- <el-form :model="form">
                <el-form-item label="请选择审核结果:" :label-width="formLabelWidth">
                </el-form-item>
              </el-form> -->
              <!-- <div slot="footer" class="dialog-footer"> -->
                <el-table
                    :data="tableData"
                    style="width: 100%; margin-bottom: 20px"
                    row-key="name"
                    border
                    height="calc(100vh - 250px)"
                    default-expand-all
                    ref="multipleTable"
                    :tree-props="{ children: 'children', hasChildren: 'hasChildren' }"
                  >
                    <el-table-column type="selection" label="序号"> </el-table-column>
                    <el-table-column
                      type="index"
                      width="50px"
                      label="序号"
                    ></el-table-column>
                    <el-table-column label="项目名称" sortable>
                      <template scope="scope">
                        <el-tag
                          ><div
                            class="firstDiv"
                            :style="`color: ${
                              scope.row.code == '[1]' ? '#16a7ff' : '#58c173'
                            }`"
                          >
                            {{ scope.row.code == "[1]" ? "01" : "02" }}
                          </div>
                          <span style="color: black">{{ scope.row.name }}</span></el-tag
                        >
                      </template>
                    </el-table-column>
                    <el-table-column
                      prop="unit"
                      label="单位"
                      sortable
                    ></el-table-column>
                    <el-table-column label="标准值" sortable>
                      <template scope="scope">
                        <el-input
                          v-if="scope.row.edit === true || scope.row.code === '[2]'"
                          @blur="requiredOnfocus(scope)"
                          v-model="scope.row.required"
                          placeholder="请输入标准值"
                        ></el-input>
                      </template>
                    </el-table-column>
                    <el-table-column prop="internal" label="内控值" sortable>
                      <template scope="scope">
                        <el-input
                          v-if="scope.row.edit === true || scope.row.code === '[2]'"
                          @blur="requiredOnfocus(scope)"
                          v-model="scope.row.internal"
                          placeholder="请输入内控值"
                        ></el-input>
                      </template>
                    </el-table-column>
                  </el-table>
              <!-- </div> -->
            </el-dialog>
        <!-- 原材料检验模态框 -->
        <el-dialog
        title="原材料检验"
@@ -390,7 +467,7 @@
                type="selection"
                label=""
                min-width="10%"
              />
              />
              <el-table-column
                type="index"
                label="序号"
@@ -490,7 +567,7 @@
                />
                <el-table-column
                  prop="formTime"
                  label="来料日期"
                  label="委托bian'ha"
                  min-width="10%"
                />
                <el-table-column
@@ -528,7 +605,7 @@
                <el-button @click="commisionVisible = false">取 消</el-button>
                <el-button type="primary" @click="handleCommisionSelection">确 定</el-button>
              </span>
          </div>
          </div>
        </el-dialog>
      </template>
      <template v-else>
@@ -536,9 +613,9 @@
      </template>
    </div>
  </template>
  <script>
  import { selectInspectsList, selectAll, addInspect} from '@/api/experiment/planAssignments'
  import { selectInspectsList, selectAll, addInspect,getCommisionList} from '@/api/experiment/planAssignments'
  export default {
    data() {
      return {
@@ -546,8 +623,9 @@
        searchData: {
          applicationnumber: '',
          type: '',
          state: ''
          state: '',
        },
        icode:'',
        inspectionTable: [],
        rawMaterialTable: [],
        commisionTable: [{
@@ -585,7 +663,7 @@
          amount: '',
          checkdate: []
        },
        infoForm:'',
        infoForm:{},
        commisionSelection:{
          entrust_coding: '',
          entrusted: '',
@@ -623,13 +701,15 @@
        }],
        currentPage: 1,
        total: 20, // 总条数
        pageSize: 5, // 每页的数据条数
        pageSize: 8, // 每页的数据条数
        radioValue: '全部',
        checkTypeVisible: false,
        type: '', // 默认不选中的状态
        type: 0, // 默认不选中的状态
        rawmaterialVisible: false,
        commisionVisible: false,
        tmp: ''
        tmp: '',
        Standardframe: false,
            tableData: []
      }
    },
    watch: {
@@ -649,9 +729,30 @@
      if (this.$route.name === 'ForInspectionDetail') this.showDetail = true
    },
    methods: {
      async handleClick(row){
        // console.log(item);
        // const res = await ddd({goodId:id})
        // this.$message({
        //   message: '恭喜你,这是一条成功消息',
        //   type: 'success'
        // });
        // console.log(res);
        this.inspectionTable = row;
        console.log(row.id);
        this.id = row.id
        this.$router.push({name:'Viewdetails',query: {id:row.id}});
        this.selectInspectsList()
      },
      //委托检验
      async getCommisionList() {
        const res = await getCommisionList({pageNo:1,pageSize:10 })
        this.commisionTable = res.data
        console.log(this.commisionTable);
      },
      async selectInspectsList() {
        // 获取分页列表
        const res = await selectInspectsList({ countSize: this.pageSize, pageSize: this.currentPage })
        const res = await selectInspectsList({ countSize: this.pageSize, pageSize: this.currentPage,message:this.id})
        // this.inspectionTable = data
        // console.log(res.data.row)
        const data = res.data.row
@@ -703,17 +804,15 @@
      this.total = this.inspectionTable.length
    },
    reset(){
      this.searchData = {
          applicationnumber: '',
          type: '',
          state: ''
      }
      this.selectInspectsList()
      this.countSize = 1;
      this.pageSize = 8;
      this.searchData = { };
      this.selectInspectsList();
    },
    //被选中的信息 单选
    //被选中的信息 单选
    handleSelectionChange(val) {
      if (val.length > 1) {
        this.$refs.multipleTable.clearSelection();
        this.$refs.multipleTable.clearSelection();
        this.$refs.multipleTable.toggleRowSelection(val.pop())
      }
      this.tmp = val[0]
@@ -727,7 +826,6 @@
      this.rawmaterialVisible = false
    },
    async handleRadioChange(){
      console.log(this.type)
      if(this.type === 0){
        // 原材料报检
        this.rawmaterialVisible = true
@@ -739,19 +837,21 @@
          checkdate.push(item['updateTime'])
          item['checkdate'] = checkdate // 检验日期
        })
        this.rawMaterialTable = data
          // this.infoForm = res.data
        // this.$router.push({ name: 'ReportForInspection' });
      }else if(this.type === 1){
        this.commisionVisible = true
        const res = await selectAll({type: this.type})
        var data = res.data
        data.forEach((item)=>{
          var checkdate = []
          checkdate.push(item['startTime'])
          checkdate.push(item['endTime'])
          item['checkdate_'] = item['startTime'] + '~' + item['endTime']
          item['checkdate'] = checkdate // 检验日期
        })
        const res = await getCommisionList({pageNo:1,pageSize:10})
        // var data = res.data
        // data.forEach((item)=>{
        //   var checkdate = []
        //   checkdate.push(item['startTime'])
        //   checkdate.push(item['endTime'])
        //   item['checkdate_'] = item['startTime'] + '~' + item['endTime']
        //   item['checkdate'] = checkdate // 检验日期
        // })
        this.commisionTable = res.data
        // this.$router.push({ name: 'CommissionInspection' });
      }
    },
    // 新增检验
@@ -795,7 +895,7 @@
          type: this.type,
          unit: this.finishedTable.unit })
      }
      this.type = ''
      this.type = 0
      this.checkTypeVisible = false
      this.$message({
          message: '添加成功!',
@@ -814,11 +914,15 @@
        console.log(`当前页: ${val}`)
        this.currentPage = val
        this.selectInspectsList()
      },
      //确定跳转
      QUEding(){
        this.Standardframe = true
      }
    }
  }
  </script>
  <style lang="scss" scoped>
  .checkType{
    .check-box{
@@ -833,12 +937,12 @@
            border-color: #b3d8ff;
           ::v-deep  .el-radio__label{
              color: #333 !important;
            }
          }
          height: auto;
          font-size: 22px !important;
          padding: 20px 40px !important;
          padding: 40px 50px !important;
          ::v-deep  .el-radio__label{
            font-size: 22px !important;
            padding-left: 0px !important;
@@ -876,7 +980,7 @@
    display: flex;
    justify-content: flex-end;
  }
  .getDataBtn, .createBtn {
    margin-left: 10px; /* Optional: Add some space between the buttons */
  }