| | |
| | | <div class="top-bar"> |
| | | <el-form ref="form" :inline="true" :model="searchData"> |
| | | <el-form-item label="申请单号:"> |
| | | <el-input v-model="searchData.applicationnumber" class="input-form" placeholder="请输入申请单号" |
| | | <el-input size="small" v-model="searchData.applicationnumber" class="input-form" placeholder="请输入申请单号" |
| | | style="width: 200px; margin-right: 20px;"> |
| | | <i slot="prefix" class="el-input__icon el-icon-search" /> |
| | | </el-input> |
| | | </el-form-item> |
| | | <el-form-item label="检验类型:"> |
| | | <el-select v-model="searchData.type" placeholder="全部" style="width: 100px;margin-right: 20px;"> |
| | | <el-form-item label="检验类型:" width="200"> |
| | | <el-select size="small" v-model="searchData.type" placeholder="全部" style="width: 100px;margin-right: 20px;"> |
| | | <el-option v-for="item in typeoptions" :key="item.value" :label="item.label" :value="item.value"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="检验结果:" style="margin-right: 20px;"> |
| | | <el-select v-model="searchData.state" placeholder="全部" style="width: 100px;margin-right: 20px;"> |
| | | <el-form-item label="检验结果:" width="200"> |
| | | <el-select size="small" v-model="searchData.state" placeholder="全部" style="width: 100px;margin-right: 20px;"> |
| | | <el-option v-for="item in stateoptions" :key="item.value" :label="item.label" :value="item.value"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item> |
| | | <el-button type="primary" @click="searchInspections">查询</el-button> |
| | | <el-button type="primary" plain @click="reset">重置</el-button> |
| | | <el-button size="small" type="primary" @click="searchInspections">查询</el-button> |
| | | <el-button size="small" type="primary" plain @click="reset">重置</el-button> |
| | | </el-form-item> |
| | | </el-form> |
| | | <el-form class="rightBtn"> |
| | | <el-form-item class="createBtn"> |
| | | <el-button type="primary" icon="el-icon-document-add" @click="checkTypeVisible = true" |
| | | <el-button size="small" type="primary" icon="el-icon-plus" @click="showAddDialog" |
| | | style="background-color: rgb(1, 102, 226);">新增检验单</el-button> |
| | | </el-form-item> |
| | | <el-form-item class="getDataBtn"> |
| | | <el-button type="primary" icon="el-icon-download" |
| | | <el-button size="small" type="primary" icon="el-icon-download" |
| | | style="background-color: rgb(1, 102, 226);">导出检验单</el-button> |
| | | </el-form-item> |
| | | </el-form> |
| | |
| | | <div class="library-table"> |
| | | <div class="table-box"> |
| | | <el-table ref="inspectionTable" style="width: 100%;overflow-y: auto;max-height: 600px;" :height="600" |
| | | :cell-style="{textAlign: 'center'}" |
| | | :header-cell-style="{border:'0px',background:'#f5f7fa',color:'#606266',boxShadow: 'inset 0 1px 0 #ebeef5',textAlign: 'center'}" |
| | | :cell-style="{textAlign: 'left'}" |
| | | :header-cell-style="{border:'0px',background:'#f5f7fa',color:'#606266',boxShadow: 'inset 0 1px 0 #ebeef5',textAlign: 'left'}" |
| | | :data="inspectionTable"> |
| | | <el-table-column type="selection" min-width="30px" /> |
| | | <el-table-column prop="icode" label="申请单号" min-width="150px" /> |
| | | <el-table-column prop="type" label="检验类型" min-width="80px"> |
| | | <el-table-column prop="icode" label="申请单号" min-width="160px" /> |
| | | <el-table-column prop="type" label="检验类型" min-width="100px"> |
| | | <template slot-scope="scope"> |
| | | <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> |
| | | <div v-if="scope.row.type === 0"><el-tag type="success">原材料检验</el-tag></div> |
| | | <div v-if="scope.row.type === 2"><el-tag>委托检验</el-tag></div> |
| | | <div v-if="scope.row.type === 1"><el-tag type="warning">成品检验</el-tag></div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="formTime" label="来料日期" min-width="90px" /> |
| | | <el-table-column prop="supplier" label="供应商名称" min-width="150px" show-overflow-tooltip /> |
| | | <el-table-column prop="mcode" label="原材料编码" min-width="170px" /> |
| | | <el-table-column prop="name" label="原材料名称" min-width="80px" /> |
| | | <el-table-column prop="name" label="原材料名称" min-width="90px" /> |
| | | <el-table-column prop="specifications" label="规格型号" min-width="160px" /> |
| | | <el-table-column prop="unit" label="单位" min-width="50px" /> |
| | | <el-table-column prop="num" label="数量" min-width="50px" /> |
| | | <el-table-column prop="createTime" label="登记日期" min-width="80px" /> |
| | | <el-table-column prop="inspection_status" label="检验结果" min-width="80px"> |
| | | <el-table-column prop="createTime" label="登记日期" min-width="90px" /> |
| | | <el-table-column prop="inspection_status" label="检验结果" min-width="95px"> |
| | | <template slot-scope="scope"> |
| | | <el-tag class="tag" type="danger" disable-transitions |
| | | <el-tag style="text-align: center;" class="tag" effect="dark" type="danger" disable-transitions |
| | | v-if="scope.row.inspection_status == 0">不合格</el-tag> |
| | | <el-tag class="tag" type="success" disable-transitions |
| | | <el-tag style="text-align: center;" class="tag" effect="dark" type="success" disable-transitions |
| | | v-else-if="scope.row.inspection_status == 1">合格</el-tag> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="userName" label="登记人" min-width="80px" /> |
| | | <el-table-column prop="checkdate" label="检验日期" min-width="160px" /> |
| | | <el-table-column label="操作" min-width="150" fixed="right"> |
| | | <el-table-column prop="checkdate" label="检验日期" min-width="170px" /> |
| | | <el-table-column label="操作" min-width="120" fixed="right"> |
| | | <template slot-scope="scope"> |
| | | <el-button type="text" size="small" @click="handleClick(scope.row)">查看</el-button> |
| | | <el-button type="text" size="small" @click="delInspect(scope.row)">作废</el-button> |
| | |
| | | <el-radio-group v-model="type" @click.native="handleRadioChange"> |
| | | <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> |
| | | :label="2" 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-group> |
| | | </div> |
| | | <div v-if="type === 0"> |
| | |
| | | <el-row :gutter="100"> |
| | | <el-col :span="10"> |
| | | <el-form-item label="来料日期:"> |
| | | <!-- <el-input style="width: 300px" type="text" :value="infoForm.startTime" placeholder="请输入来料日期" autocomplete="off" /> --> |
| | | <el-date-picker style="width: 300px" v-model="infoForm.formTime" type="date" placeholder="选择日期"> |
| | | <el-date-picker style="width: 300px" disabled v-model="infoForm.formTime" type="date" placeholder="选择日期"> |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="10"> |
| | | <el-form-item label="供应商名称:"> |
| | | <el-input style="width: 300px" type="text" :value="infoForm.supplier" placeholder="请输入供应商名称" |
| | | <el-input style="width: 300px" type="text" disabled :value="infoForm.supplier" placeholder="请输入供应商名称" |
| | | autocomplete="off" /> |
| | | </el-form-item> |
| | | </el-col> |
| | |
| | | <el-row :gutter="100"> |
| | | <el-col :span="10"> |
| | | <el-form-item label="原材料编码:"> |
| | | <el-input style="width: 300px" type="text" :value="infoForm.mcode" placeholder="请输入原材料编码" |
| | | <el-input style="width: 300px" type="text" disabled :value="infoForm.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="infoForm.name" placeholder="请输入原材料名称" |
| | | <el-input style="width: 300px" type="text" disabled :value="infoForm.name" placeholder="请输入原材料名称" |
| | | autocomplete="off" /> |
| | | </el-form-item> |
| | | </el-col> |
| | |
| | | <el-row :gutter="100"> |
| | | <el-col :span="10"> |
| | | <el-form-item label="规格型号:"> |
| | | <el-input style="width: 300px" type="text" :value="infoForm.specifications" placeholder="请输入规格型号" |
| | | <el-input style="width: 300px" type="text" disabled :value="infoForm.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="infoForm.unit" placeholder="请输入单位" |
| | | <el-input style="width: 300px" type="text" disabled :value="infoForm.unit" placeholder="请输入单位" |
| | | autocomplete="off" /> |
| | | </el-form-item> |
| | | </el-col> |
| | |
| | | <el-row :gutter="100"> |
| | | <el-col :span="10"> |
| | | <el-form-item label="数量:"> |
| | | <el-input style="width: 300px" type="text" :value="infoForm.num" placeholder="请输入数量" |
| | | <el-input style="width: 300px" type="text" disabled :value="infoForm.num" placeholder="请输入数量" |
| | | autocomplete="off" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="10"> |
| | | <el-form-item label="检验时间:"> |
| | | <el-date-picker v-model="infoForm.checkdate" type="daterange" range-separator="至" |
| | | start-placeholder="开始日期" end-placeholder="结束日期" style="width: 300px;"> |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | </el-form> |
| | | </div> |
| | | <div v-if="type === 1"> |
| | | <el-form :model="commisionSelection" ref="commisionSelection" class="checkTypeForm" label-position="top" |
| | | label-width="200px" size="mini"> |
| | | <el-row :gutter="100"> |
| | | <el-col :span="10"> |
| | | <el-form-item label="委托编号"> |
| | | <el-input style="width: 300px" type="text" :value="commisionSelection.entrust_coding" |
| | | 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-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-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-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-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-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.completionDeadline" |
| | | placeholder="请输入数量" autocomplete="off" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="10"> |
| | | <el-form-item label="检验日期:"> |
| | | <el-date-picker v-model="commisionSelection.checkdate" type="daterange" range-separator="至" |
| | | start-placeholder="开始日期" end-placeholder="结束日期" style="width: 300px;"> |
| | | start-placeholder="开始日期" value-format="yyyy-MM-dd" end-placeholder="结束日期" style="width: 300px;"> |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | </el-col> |
| | |
| | | </el-form> |
| | | </div> |
| | | <div v-if="type === 2"> |
| | | <el-form :model="finishedTable" ref="finishedTable" class="checkTypeForm" label-position="top" |
| | | <el-form :model="commisionSelection" ref="commisionSelection" class="checkTypeForm" label-position="top" |
| | | label-width="200px" size="mini"> |
| | | <el-row :gutter="100"> |
| | | <el-col :span="10"> |
| | | <el-form-item label="来料日期:"> |
| | | <el-input style="width: 300px" type="text" v-model="finishedTable.deliverydate" |
| | | <el-form-item label="委托编号"> |
| | | <el-input style="width: 300px" type="text" disabled :value="commisionSelection.entrust_coding" |
| | | 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-form-item label="委托单位"> |
| | | <el-input style="width: 300px" type="text" disabled :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" v-model="finishedTable.code" placeholder="请输入原材料编码" |
| | | <el-form-item label="样品编号"> |
| | | <el-input style="width: 300px" type="text" disabled :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" v-model="finishedTable.name" placeholder="请输入原材料名称" |
| | | <el-form-item label="样品名称"> |
| | | <el-input style="width: 300px" type="text" disabled :value="commisionSelection.name" placeholder="请输入样品名称" |
| | | autocomplete="off" /> |
| | | </el-form-item> |
| | | </el-col> |
| | |
| | | <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" disabled :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" disabled :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" disabled :value="commisionSelection.completionDeadline" |
| | | placeholder="请输入完成期限" autocomplete="off" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="10"> |
| | | <el-form-item label="检验日期:"> |
| | | <el-date-picker v-model="commisionSelection.checkdate" type="daterange" range-separator="至" |
| | | start-placeholder="开始日期" value-format="yyyy-MM-dd" end-placeholder="结束日期" style="width: 300px;"> |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | </el-form> |
| | | </div> |
| | | <div v-if="type === 1"> |
| | | <el-form :model="finishedTable" ref="finishedTable" class="checkTypeForm" label-position="top" |
| | | label-width="200px" size="mini"> |
| | | <el-row :gutter="100"> |
| | | <el-col :span="10"> |
| | | <el-form-item label="成品编码:"> |
| | | <el-input style="width: 300px" type="text" disabled v-model="finishedTable.code" placeholder="请输入成品编码" |
| | | autocomplete="off" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="10"> |
| | | <el-form-item label="成品名称:"> |
| | | <el-select style="width: 300px" v-model="finishedTable.name" @change="getSpecifications"> |
| | | <el-option v-for="(item,index) in mList" :key="index" :label="item.name" :value="item.id"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row :gutter="100"> |
| | | <el-col :span="10"> |
| | | <el-form-item label="规格型号:"> |
| | | <el-cascader style="width: 300px" v-model="finishedTable.modelandspecification" |
| | | :options="specificationList" :show-all-levels="false" @change="changeSpe" |
| | | :props="{label:'name',value:'id',children:'children'}"></el-cascader> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="10"> |
| | |
| | | <el-row :gutter="100"> |
| | | <el-col :span="10"> |
| | | <el-form-item label="数量:"> |
| | | <el-input style="width: 300px" type="text" v-model="finishedTable.amount" placeholder="请输入数量" |
| | | <el-input style="width: 300px" min="0" type="number" v-model="finishedTable.amount" placeholder="请输入数量" |
| | | autocomplete="off" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="10"> |
| | | <el-form-item label="检验时间:"> |
| | | <el-date-picker v-model="finishedTable.checkdate" type="daterange" range-separator="至" |
| | | start-placeholder="开始日期" end-placeholder="结束日期" style="width: 300px;"> |
| | | start-placeholder="开始日期" value-format="yyyy-MM-dd" end-placeholder="结束日期" style="width: 300px;"> |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | </el-col> |
| | |
| | | </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="QUEding">确 定</el-button> |
| | | </span> |
| | | </el-dialog> |
| | |
| | | <template slot-scope="scope"> |
| | | <span>版本选择:</span> |
| | | <el-select @change="getProductVerison" v-model="version" size="small" slot="append" style="width: 220px;"> |
| | | <el-option v-for="item in BANben" :key="item" :label="item" :value="item"></el-option> |
| | | <el-option v-for="(item,index) in BANben" :key="index" :label="item.label" :value="item.value"></el-option> |
| | | </el-select> |
| | | </template> |
| | | </el-card> |
| | | <el-table :data="tableData" style="width: 100%; margin-bottom: 20px" row-key="id" border height="calc(40vh)" |
| | | <el-table :data="tableData" style="width: 100%; margin-bottom: 20px;overflow-y: auto;" row-key="id" border height="40vh" |
| | | default-expand-all ref="multipleTable" :tree-props="{ children: 'children', hasChildren: 'hasChildren' }"> |
| | | <el-table-column type="index" width="50px" label="序号"></el-table-column> |
| | | <el-table-column prop="name" label="项目名称" sortable> |
| | |
| | | </span> |
| | | </el-dialog> |
| | | <!-- 原材料检验模态框 --> |
| | | <el-dialog title="原材料检验" :visible.sync="rawmaterialVisible" width="60%"> |
| | | <el-dialog title="原材料检验" :visible.sync="rawmaterialVisible" width="60%" top="100px"> |
| | | <div class="table-box"> |
| | | <el-table ref="multipleTable" :max-height="800" :cell-style="{textAlign: 'center'}" |
| | | <el-table ref="multipleTable" :max-height="600" :cell-style="{textAlign: 'center'}" |
| | | :header-cell-style="{border:'0px',background:'#f5f7fa',color:'#606266',boxShadow: 'inset 0 1px 0 #ebeef5',textAlign: 'center'}" |
| | | :data="rawMaterialTable" style="width: 100%" @selection-change="handleSelectionChange"> |
| | | <el-table-column type="selection" min-width="10%" /> |
| | |
| | | <el-table-column prop="surveyor" label="检验人" min-width="8%" /> |
| | | <el-table-column prop="startTime" label="检验日期" min-width="8%" /> |
| | | <el-table-column prop="type" label="状态" min-width="8%"> |
| | | <template slot-scope="scope"> |
| | | <span :style="{ color: scope.row.state === type ? 'green' : 'red' }"> |
| | | {{ scope.row.state===1 ? '已检测':'待检测' }} |
| | | </span> |
| | | <template> |
| | | <span style="color: red">待检验</span> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | :data="commisionTable" @selection-change="handleSelectionChange" style="width: 100%"> |
| | | <el-table-column type="selection" min-width="10%" /> |
| | | <el-table-column type="index" label="序号" min-width="10%" /> |
| | | <el-table-column prop="entrust_coding" label="委托编号" min-width="10%" /> |
| | | <el-table-column prop="entrustCoding" label="委托编号" min-width="10%" /> |
| | | <el-table-column prop="supplier" label="委托单位" min-width="12%" /> |
| | | <el-table-column prop="mcode" label="样品编号" min-width="8%" /> |
| | | <el-table-column prop="name" label="样品名称" min-width="8%" /> |
| | | <el-table-column prop="specifications" label="规格型号" min-width="12%" /> |
| | | <el-table-column prop="endTime" label="送达时间" min-width="8%" /> |
| | | <el-table-column prop="formTime" label="完成期限" min-width="8%" /> |
| | | <el-table-column prop="formTime" label="送达时间" min-width="8%" /> |
| | | <el-table-column prop="endTime" label="完成期限" min-width="8%" /> |
| | | <el-table-column prop="contacts" label="委托编制人" min-width="8%" /> |
| | | <el-table-column prop="endTime" label="检验日期" min-width="8%" /> |
| | | <el-table-column prop="inspection_status" label="状态" min-width="8%"> |
| | |
| | | addInspect, |
| | | chooseVer, |
| | | lookProByVer, |
| | | delInspect |
| | | delInspect, |
| | | getSpecificationByMaterielId, |
| | | getMaterielList |
| | | } from '@/api/experiment/planAssignments' |
| | | export default { |
| | | data() { |
| | | return { |
| | | speName:"", |
| | | specificationList: [], |
| | | mList:[], |
| | | showDetail: false, |
| | | searchData: { |
| | | applicationnumber: '', |
| | |
| | | rawMaterialTable: [], |
| | | commisionTable: [], |
| | | finishedTable: { |
| | | deliverydate: '', |
| | | supplier: '', |
| | | code: '', |
| | | name: '', |
| | | modelandspecification: '', |
| | |
| | | pageSize: 10, // 每页的数据条数 |
| | | radioValue: '全部', |
| | | checkTypeVisible: false, |
| | | type: 0, // 默认不选中的状态 |
| | | type: 1, // 默认不选中的状态 |
| | | rawmaterialVisible: false, |
| | | commisionVisible: false, |
| | | tmp: {}, |
| | |
| | | handler(val, oldval) {}, |
| | | // 深度观察监听 |
| | | deep: true |
| | | }, |
| | | checkTypeVisible(newVal){ |
| | | if(newVal == false){ |
| | | this.finishedTable = { |
| | | code: '', |
| | | name: '', |
| | | modelandspecification: '', |
| | | unit: '', |
| | | amount: '', |
| | | checkdate: [] |
| | | }; |
| | | this.infoForm = {}; |
| | | this.commisionSelection = { |
| | | entrust_coding: '', |
| | | entrusted: '', |
| | | samples_number: '', |
| | | sample_name: '', |
| | | specifications_models: '', |
| | | dateSurvey: '', |
| | | completionDeadline: '', |
| | | contacts: '', |
| | | inspectionTime: '' |
| | | }; |
| | | } |
| | | } |
| | | }, |
| | | created() { |
| | |
| | | if (this.$route.name === 'ForInspectionDetail') this.showDetail = true |
| | | }, |
| | | methods: { |
| | | changeSpe(val){ |
| | | this.tmp.specificationsId = val[val.length-1]; |
| | | let arr1 = this.specificationList[0].children.filter(item=>{ |
| | | return item.id==val[1] |
| | | }); |
| | | let arr2 = arr1[0].children.filter(item=>{ |
| | | return item.id = val[2] |
| | | }) |
| | | let speName = arr1[0].name + "-" + arr2[0].name; |
| | | this.speName = speName; |
| | | |
| | | }, |
| | | getSpecifications(val){ |
| | | if(val != null){ |
| | | this.selectSpecificationByMaterielId(val); |
| | | let item = this.mList.filter(item => { |
| | | return item.id == val; |
| | | }); |
| | | this.finishedTable.code = item[0].code; |
| | | this.tmp.mcode = item[0].code; |
| | | this.tmp.name = item[0].name; |
| | | } |
| | | }, |
| | | async selectSpecificationByMaterielId(mId){ |
| | | await getSpecificationByMaterielId({id : mId}).then(res=>{ |
| | | this.specificationList = new Array(res.data); |
| | | }).catch(error => { |
| | | this.$message.error(error.message); |
| | | }); |
| | | }, |
| | | //显示新增检验单模态框 |
| | | showAddDialog(){ |
| | | this.selectMaterielList(); |
| | | this.checkTypeVisible = true |
| | | }, |
| | | //获取成品信息 |
| | | async selectMaterielList(){ |
| | | await getMaterielList().then(res=>{ |
| | | this.mList = res.data |
| | | }).catch(error => { |
| | | this.$message.error(error.message); |
| | | }); |
| | | }, |
| | | async selectAll() { |
| | | |
| | | const res = selectAll({ |
| | | type: 0 |
| | | }) |
| | |
| | | const res = await chooseVer({ |
| | | mcode: this.tmp.mcode, |
| | | name: this.tmp.name, |
| | | specifications: this.tmp.specifications |
| | | specifications: this.tmp.specificationsId |
| | | }) |
| | | this.BANben = [] |
| | | res.data.forEach(a => { |
| | | this.BANben.push('V ' + a) |
| | | this.BANben.push({ |
| | | label: "V" + a, |
| | | value: a |
| | | }) |
| | | }) |
| | | this.version = this.BANben[0] |
| | | this.lookProByVer() |
| | | this.version = this.BANben[0].value; |
| | | this.lookProByVerFun() |
| | | }, |
| | | //标准库 |
| | | async lookProByVer() { |
| | | async lookProByVerFun() { |
| | | const res = await lookProByVer({ |
| | | mcode: this.tmp.mcode, |
| | | name: this.tmp.name, |
| | | specifications: this.tmp.specifications, |
| | | version: this.version.replace('V ', '') |
| | | specifications: this.tmp.specificationsId, |
| | | version: this.version |
| | | }) |
| | | this.tableData = res.data |
| | | }, |
| | | getProductVerison(val) { |
| | | this.version = val |
| | | this.lookProByVer() |
| | | this.lookProByVerFun() |
| | | }, |
| | | async selectInspectsList() { |
| | | // 获取分页列表 |
| | |
| | | }, |
| | | reset() { |
| | | this.countSize = 1; |
| | | this.pageSize = 8; |
| | | this.searchData = {}; |
| | | this.pageSize = 10; |
| | | this.searchData = { |
| | | applicationnumber: '', |
| | | type: '', |
| | | state: '', |
| | | }; |
| | | this.selectInspectsList(); |
| | | }, |
| | | //被选中的信息 单选 |
| | |
| | | checkdate.push(item['updateTime']) |
| | | item['checkdate'] = checkdate // 检验日期 |
| | | }) |
| | | this.rawMaterialTable = res.data |
| | | let arr = res.data.filter((val)=>{ |
| | | return val.type === 0; |
| | | }) |
| | | this.rawMaterialTable = arr |
| | | }) |
| | | } else if (this.type === 1) { |
| | | } else if (this.type === 2) { |
| | | this.commisionVisible = true |
| | | selectAll({ |
| | | type: 2 |
| | |
| | | }, |
| | | // 新增检验 |
| | | async addInspection() { |
| | | let obj = {}; |
| | | if (this.type === 0) { |
| | | addInspect({ |
| | | obj = { |
| | | endTime: this.infoForm.checkdate[1], |
| | | formTime: this.infoForm.formTime, |
| | | mcode: this.infoForm.mcode, |
| | | name: this.infoForm.name, |
| | | num: this.infoForm.num, |
| | | specifications: this.infoForm.specifications, |
| | | specificationId: this.infoForm.specificationsId, |
| | | startTime: this.infoForm.checkdate[0], |
| | | supplier: this.infoForm.supplier, |
| | | type: this.type, |
| | | unit: this.infoForm.unit, |
| | | version: this.version.replace('V ', '') |
| | | }).then(res => { |
| | | this.$message({ |
| | | message: '添加成功!', |
| | | type: 'success' |
| | | }); |
| | | this.$router.push(`Viewdetails/${res.data}`) |
| | | }) |
| | | version: this.version |
| | | } |
| | | } |
| | | if (this.type === 1) { |
| | | const res = await addInspect({ |
| | | if (this.type === 2) { |
| | | obj = { |
| | | endTime: this.commisionSelection.checkdate[1], |
| | | formTime: this.commisionSelection.formTime, |
| | | mcode: this.commisionSelection.mcode, |
| | | name: this.commisionSelection.name, |
| | | num: this.commisionSelection.num, |
| | | specifications: this.commisionSelection.specifications, |
| | | specificationId:this.commisionSelection.specificationsId, |
| | | startTime: this.commisionSelection.checkdate[0], |
| | | supplier: this.commisionSelection.supplier, |
| | | type: this.type, |
| | | unit: this.commisionSelection.unit, |
| | | version: this.version |
| | | }) |
| | | } |
| | | } |
| | | if (this.type === 2) { |
| | | const res = await addInspect({ |
| | | endTime: '2023-08-15', |
| | | formTime: this.finishedTable.deliverydate, |
| | | if (this.type === 1) { |
| | | obj = { |
| | | endTime: this.finishedTable.checkdate[1], |
| | | mcode: this.finishedTable.code, |
| | | name: this.finishedTable.name, |
| | | name: this.tmp.name, |
| | | num: parseInt(this.finishedTable.amount), |
| | | specifications: this.finishedTable.modelandspecification, |
| | | startTime: '2023-08-14', |
| | | supplier: this.finishedTable.supplier, |
| | | specifications: this.speName, |
| | | specificationId: this.finishedTable.modelandspecification[2], |
| | | startTime: this.finishedTable.checkdate[0], |
| | | type: this.type, |
| | | unit: this.finishedTable.unit, |
| | | version: this.version |
| | | }) |
| | | } |
| | | } |
| | | this.type = 0 |
| | | this.checkTypeVisible = false |
| | | // this.$message({ |
| | | // message: '添加成功!', |
| | | // type: 'success' |
| | | // }); |
| | | // this.$router.push({name: 'Viewdetails'}) |
| | | addInspect(obj).then(res => { |
| | | this.$message({ |
| | | message: '添加成功!', |
| | | type: 'success' |
| | | }); |
| | | this.type = 1 |
| | | this.checkTypeVisible = false |
| | | this.$router.push(`Viewdetails/${res.data}`) |
| | | }).catch(error=>{ |
| | | this.$message.error(error.message); |
| | | }) |
| | | }, |
| | | // 每页条数改变时触发 选择一页显示多少行 |
| | | handleSizeChange(val) { |
| | |
| | | // }, |
| | | //确定跳转 |
| | | QUEding() { |
| | | if (this.infoForm.checkdate[0] == undefined || this.infoForm.checkdate[1] == undefined) { |
| | | console.log(this.infoForm); |
| | | if (this.type==0 &&(this.infoForm.checkdate[0] == undefined || this.infoForm.checkdate[1] == undefined)) { |
| | | this.$message({ |
| | | message: '请选择检验时间', |
| | | type: 'warning' |
| | |
| | | this.addInspection() |
| | | }, |
| | | delInspect(row){ |
| | | delInspect({ |
| | | id: row.id |
| | | }).then(res=>{ |
| | | this.$message.success('已作废') |
| | | this.selectInspectsList() |
| | | }) |
| | | this.$confirm('您确认删除这条数据吗?', '提示', { |
| | | confirmButtonText: '确定', |
| | | cancelButtonText: '取消', |
| | | type: 'warning' |
| | | }).then(() => { |
| | | delInspect({ |
| | | id: row.id |
| | | }).then(()=>{ |
| | | this.$message.success('已作废') |
| | | this.selectInspectsList() |
| | | }) |
| | | }).catch(() => {}); |
| | | } |
| | | } |
| | | } |