zouyu
2024-03-14 f6c6a4067d68eb1d78a46bf44c279c0faff1d39b
src/components/view/b1-inspection-order.vue
@@ -69,117 +69,124 @@
</style>
<template>
   <div class="role_manage">
      <div>
         <el-row class="title">
            <el-col :span="12" style="padding-left: 20px;">检验下单</el-col>
            <el-col :span="12" style="text-align: right;">
               <el-button size="medium" type="primary" @click="playOrder">下单</el-button>
            </el-col>
         </el-row>
   <div class="inspection_order">
      <div style="width: 100%;height: 100%;" v-if="active == 0">
         <div>
            <el-row class="title">
               <el-col :span="12" style="padding-left: 20px;">检验下单</el-col>
               <el-col :span="12" style="text-align: right;">
                  <el-button size="medium" type="primary" @click="playOrder(1)">下单</el-button>
               </el-col>
            </el-row>
         </div>
         <div class="search">
            <div class="search_thing">
               <div class="search_label">委托编号:</div>
               <div class="search_input"><el-input size="small" placeholder="请输入" clearable
                     v-model="componentData.entity.deviceName" @keyup.enter.native="refreshTable()"></el-input></div>
            </div>
            <div class="search_thing">
               <div class="search_label">样品名称:</div>
               <div class="search_input"><el-input size="small" placeholder="请输入" clearable
                     v-model="componentData.entity.specificationModel" @keyup.enter.native="refreshTable()"></el-input></div>
            </div>
            <div class="search_thing" style="padding-left: 30px;">
               <el-button size="small" @click="refresh()">重 置</el-button>
               <el-button size="small" type="primary" @click="refreshTable()">查 询</el-button>
            </div>
         </div>
         <div class="table">
            <ul class="tab">
               <li v-for="(m,i) in tabList" :key="i" :class="{active:i==tabIndex}" @click="handleTab(m,i)">{{m.label}}</li>
            </ul>
            <!-- 语法 子组件通过 this.$emit +传入方法名 调用父组件方法 例如  this.$emit(selectAllByOne) 就需在父组件声明并传入  @selectAllByOne="selectAllByOne"-->
            <ValueTable ref="ValueTable" :url="$api.insOrder.selectInsOrderParameter" :componentData="componentData"
               :key="upIndex" style="height: calc(100% - 44px)" @selectAllByOne="selectAllByOne"
               @handleDataLook="handleDataLook" @download="download" @handleVerify="handleVerify" @handlEquash="handlEquash"
               @handleIssued="handleIssued" />
         </div>
         <!-- 审核 -->
         <el-dialog title="下单审核" :visible.sync="verifyDialogVisible" width="30%" :before-close="handleClose">
            <p style="font-size:16px;color:#333333" v-if="!isPass">委托编号<span
                  style="color:#34BD66">ZTMS2023071001</span>的信息是否通过</p>
            <el-form :label-position="labelPosition" :model="formData" label-width="150px" ref="ruleForm" v-else>
               <el-form-item label="请输入样品库位号:">
                  <el-input v-model="formData.specificationModel" size="small" style="width:60%"></el-input>
               </el-form-item>
            </el-form>
            <span slot="footer" class="dialog-footer">
               <el-row v-if="!isPass">
                  <el-button @click="handleClose">退 回</el-button>
                  <el-button type="primary" @click="submitForm" :loading="upLoad">通 过</el-button>
               </el-row>
               <el-row v-else>
                  <el-button @click="handleClose">返 回</el-button>
                  <el-button type="primary" @click="submitForm" :loading="upLoad">确 定</el-button>
               </el-row>
            </span>
         </el-dialog>
         <!-- 撤销 -->
         <el-dialog title="下单撤销" :visible.sync="quashDialogVisible" width="30%" :before-close="handleClose">
            <p style="font-size:16px;color:#333333" v-if="!isQuash">委托编号<span
                  style="color:#34BD66">ZTMS2023071001</span>的信息是否撤销</p>
            <el-form :label-position="labelPosition" :model="formData" label-width="150px" ref="ruleForm" v-else>
               <el-form-item label="请输入撤销原因:">
                  <el-input v-model="formData.specificationModel" size="small" style="width:60%"></el-input>
               </el-form-item>
            </el-form>
            <span slot="footer" class="dialog-footer">
               <el-row v-if="!isQuash">
                  <el-button @click="handleClose">取 消</el-button>
                  <el-button type="primary" @click="submitForm" :loading="upLoad">确 定</el-button>
               </el-row>
               <el-row v-else>
                  <el-button @click="handleClose">返 回</el-button>
                  <el-button type="primary" @click="submitForm" :loading="upLoad">确 定</el-button>
               </el-row>
            </span>
         </el-dialog>
         <!-- 下发 -->
         <el-dialog title="检验下发" :visible.sync="issuedDialogVisible" width="30%" :before-close="handleClose">
            <el-form :label-position="labelPosition" :model="formData" label-width="150px" ref="ruleForm">
               <el-form-item label="约定时间:">
                  <el-date-picker style="width:100%" format="yyyy-MM-dd" value-format="yyyy-MM-dd" v-model="formData.downTime"
                     type="date" size="small" placeholder="选择时间">
                  </el-date-picker>
               </el-form-item>
               <el-form-item label="指派人员:">
                  <el-select v-model="formData.equipmentManager" placeholder="请选择" size="small" style="width:100%">
                     <el-option v-for="item in personList" :key="item.value" :label="item.label" :value="item.value">
                     </el-option>
                  </el-select>
               </el-form-item>
            </el-form>
            <span slot="footer" class="dialog-footer">
               <el-row>
                  <el-button @click="handleClose">取 消</el-button>
                  <el-button type="primary" @click="submitForm" :loading="upLoad">确 定</el-button>
               </el-row>
            </span>
         </el-dialog>
         <el-dialog title="数据查看" :visible.sync="dataDialogVisible" width="70%" :before-close="handleClose">
            <div style="height: 70vh;overflow-y: auto;">
               <ValueTable ref="ValueTableDataLook" :url="$api.deviceScope.selectDeviceParameter"
                  :componentData="componentDataDataLook" :key="upIndex" />
            </div>
         </el-dialog>
      </div>
      <div class="search">
         <div class="search_thing">
            <div class="search_label">委托编号:</div>
            <div class="search_input"><el-input size="small" placeholder="请输入" clearable
                  v-model="componentData.entity.deviceName" @keyup.enter.native="refreshTable()"></el-input></div>
         </div>
         <div class="search_thing">
            <div class="search_label">样品名称:</div>
            <div class="search_input"><el-input size="small" placeholder="请输入" clearable
                  v-model="componentData.entity.specificationModel" @keyup.enter.native="refreshTable()"></el-input></div>
         </div>
         <div class="search_thing" style="padding-left: 30px;">
            <el-button size="small" @click="refresh()">重 置</el-button>
            <el-button size="small" type="primary" @click="refreshTable()">查 询</el-button>
         </div>
      <div style="width: 100%;height: 100%;" v-if="active == 1">
         <Add/>
      </div>
      <div class="table">
         <ul class="tab">
            <li v-for="(m,i) in tabList" :key="i" :class="{active:i==tabIndex}" @click="handleTab(m,i)">{{m.label}}</li>
         </ul>
         <!-- 语法 子组件通过 this.$emit +传入方法名 调用父组件方法 例如  this.$emit(selectAllByOne) 就需在父组件声明并传入  @selectAllByOne="selectAllByOne"-->
         <ValueTable ref="ValueTable" :url="$api.deviceScope.selectDeviceParameter" :componentData="componentData"
            :key="upIndex" style="height: calc(100% - 44px)" @selectAllByOne="selectAllByOne"
            @handleDataLook="handleDataLook" @download="download" @handleVerify="handleVerify" @handlEquash="handlEquash"
            @handleIssued="handleIssued" />
      </div>
      <!-- 审核 -->
      <el-dialog title="下单审核" :visible.sync="verifyDialogVisible" width="30%" :before-close="handleClose">
         <p style="font-size:16px;color:#333333" v-if="!isPass">委托编号<span
               style="color:#34BD66">ZTMS2023071001</span>的信息是否通过</p>
         <el-form :label-position="labelPosition" :model="formData" label-width="150px" ref="ruleForm" v-else>
            <el-form-item label="请输入样品库位号:">
               <el-input v-model="formData.specificationModel" size="small" style="width:60%"></el-input>
            </el-form-item>
         </el-form>
         <span slot="footer" class="dialog-footer">
            <el-row v-if="!isPass">
               <el-button @click="handleClose">退 回</el-button>
               <el-button type="primary" @click="submitForm" :loading="upLoad">通 过</el-button>
            </el-row>
            <el-row v-else>
               <el-button @click="handleClose">返 回</el-button>
               <el-button type="primary" @click="submitForm" :loading="upLoad">确 定</el-button>
            </el-row>
         </span>
      </el-dialog>
      <!-- 撤销 -->
      <el-dialog title="下单撤销" :visible.sync="quashDialogVisible" width="30%" :before-close="handleClose">
         <p style="font-size:16px;color:#333333" v-if="!isQuash">委托编号<span
               style="color:#34BD66">ZTMS2023071001</span>的信息是否撤销</p>
         <el-form :label-position="labelPosition" :model="formData" label-width="150px" ref="ruleForm" v-else>
            <el-form-item label="请输入撤销原因:">
               <el-input v-model="formData.specificationModel" size="small" style="width:60%"></el-input>
            </el-form-item>
         </el-form>
         <span slot="footer" class="dialog-footer">
            <el-row v-if="!isQuash">
               <el-button @click="handleClose">取 消</el-button>
               <el-button type="primary" @click="submitForm" :loading="upLoad">确 定</el-button>
            </el-row>
            <el-row v-else>
               <el-button @click="handleClose">返 回</el-button>
               <el-button type="primary" @click="submitForm" :loading="upLoad">确 定</el-button>
            </el-row>
         </span>
      </el-dialog>
      <!-- 下发 -->
      <el-dialog title="检验下发" :visible.sync="issuedDialogVisible" width="30%" :before-close="handleClose">
         <el-form :label-position="labelPosition" :model="formData" label-width="150px" ref="ruleForm">
            <el-form-item label="约定时间:">
               <el-date-picker style="width:100%" format="yyyy-MM-dd" value-format="yyyy-MM-dd" v-model="formData.downTime"
                  type="date" size="small" placeholder="选择时间">
               </el-date-picker>
            </el-form-item>
            <el-form-item label="指派人员:">
               <el-select v-model="formData.equipmentManager" placeholder="请选择" size="small" style="width:100%">
                  <el-option v-for="item in personList" :key="item.value" :label="item.label" :value="item.value">
                  </el-option>
               </el-select>
            </el-form-item>
         </el-form>
         <span slot="footer" class="dialog-footer">
            <el-row>
               <el-button @click="handleClose">取 消</el-button>
               <el-button type="primary" @click="submitForm" :loading="upLoad">确 定</el-button>
            </el-row>
         </span>
      </el-dialog>
      <el-dialog title="数据查看" :visible.sync="dataDialogVisible" width="70%" :before-close="handleClose">
         <div style="height: 70vh;overflow-y: auto;">
            <ValueTable ref="ValueTableDataLook" :url="$api.deviceScope.selectDeviceParameter"
               :componentData="componentDataDataLook" :key="upIndex" />
         </div>
      </el-dialog>
   </div>
</template>
<script>
   import ValueTable from '../tool/value-table.vue'
   import Add from '../do/b1-ins-order/add.vue'
   export default {
      components: {
         ValueTable
         ValueTable,
         Add
      },
      data() {
         return {
@@ -197,10 +204,7 @@
            labelPosition: 'right',
            componentData: {
               entity: {
                  deviceStatus: null,
                  deviceName: null,
                  specificationModel: null,
                  largeCategory: null,
                  state: 1,
                  orderBy: {
                     field: 'id',
                     order: 'asc'
@@ -300,11 +304,11 @@
            upLoad: false,
            tabList: [{
                  label: '检验处理',
                  value: 0
                  value: 1
               },
               {
                  label: '待审核',
                  value: 1
                  value: 0
               },
               {
                  label: '退回',
@@ -316,6 +320,7 @@
               },
            ],
            tabIndex: 0,
            active: 1
         }
      },
      mounted() {
@@ -418,10 +423,14 @@
            })
         },
         // 下单
         playOrder() {},
         playOrder(num) {
            this.active = num
         },
         handleTab(m, i) {
            this.tabIndex = i;
            this.componentData.entity.state = m.value
            this.refreshTable()
         }
      }
   }
</script>
</script>