| | |
| | | <el-form-item> |
| | | <el-button type="primary" @click="search">查询</el-button> |
| | | <el-button type="primary" plain @click="reset">重置</el-button> |
| | | <el-button type="primary" icon="el-icon-plus" @click="addReportVisible = true">新增</el-button> |
| | | </el-form-item> |
| | | </el-form> |
| | | </div> |
| | | <el-dialog |
| | | title="新增原材料报检" |
| | | :visible.sync="addReportVisible" |
| | | width="40%"> |
| | | <el-form v-model="insertData" label-position="left" label-width="80px"> |
| | | <el-form-item label="标准类型"> |
| | | <el-input v-model="insertData.materialName" /> |
| | | </el-form-item> |
| | | <el-form-item label="物料名称"> |
| | | <el-input v-model="insertData.materialName" /> |
| | | </el-form-item> |
| | | <el-form-item label="执行标准"> |
| | | <el-input v-model="insertData.standardName" /> |
| | | </el-form-item> |
| | | <el-form-item label="规格型号"> |
| | | <el-input v-model="insertData.specificationsName" /> |
| | | </el-form-item> |
| | | </el-form> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button @click="addReportVisible = false">取 消</el-button> |
| | | <el-button type="primary" @click="insert()">确 定</el-button> |
| | | </span> |
| | | </el-dialog> |
| | | <div class="library-table"> |
| | | <div class="table-header"> |
| | | <div class="search-bar"> |
| | |
| | | </el-radio-group> |
| | | </div> |
| | | <div class="generateInsp"> |
| | | <el-button @click="showNewPage = true" type="primary" size="mini" icon="el-icon-document" style="background-color: rgb(1, 102, 226);">生成报检单</el-button> |
| | | <el-button @click="addReportBtn" type="primary" size="mini" icon="el-icon-document" style="background-color: rgb(1, 102, 226);">生成报检单</el-button> |
| | | </div> |
| | | |
| | | </div> |
| | | <div class="table-box"> |
| | | <el-table |
| | |
| | | :header-cell-style="{border:'0px',background:'#f5f7fa',color:'#606266',boxShadow: 'inset 0 1px 0 #ebeef5',textAlign: 'center'}" |
| | | :data="inspectionTable" |
| | | style="width: 100%" |
| | | @selection-change="handleSelectionChange" |
| | | > |
| | | <el-table-column |
| | | type="selection" |
| | | min-width="10%" |
| | | /> |
| | | :selectable="checkSelect" |
| | | min-width="5%"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | type="index" |
| | | label="序号" |
| | |
| | | > |
| | | <template slot-scope="scope"> |
| | | <span :style="{ color: scope.row.type === 1 ? 'green' : 'red' }"> |
| | | {{ scope.row.type === 1 ? '已检测':'未检测' }} |
| | | {{ scope.row.type === 1 ? '已报检':'未报检' }} |
| | | </span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="操作" |
| | | min-width="8%"> |
| | | <template slot-scope="scope"> |
| | | <el-button type="text" size="small" @click="removeFun(scope.row)">删除</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <!-- 分页器 --> |
| | |
| | | <el-row> |
| | | <el-col :span="8"> |
| | | <el-form-item label="来料日期:"> |
| | | <el-input style="width: 180px;" :value="inspectionForm.createTime" disabled autocomplete="off" /> |
| | | <el-input style="width: 180px;" :value="inspectionForm.formTime" disabled autocomplete="off" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="8"> |
| | | <el-form-item label="供应商名称:"> |
| | | <el-input style="width: 180px;" :value="inspectionForm.supplier_name" disabled autocomplete="off" /> </el-form-item> |
| | | <el-input style="width: 180px;" :value="inspectionForm.supplier" disabled autocomplete="off" /> </el-form-item> |
| | | </el-col> |
| | | <el-col :span="8"> |
| | | <el-form-item label="样品编号:"> |
| | | <el-input style="width: 180px;" :value="inspectionForm.materialCoding" disabled autocomplete="off" /> |
| | | <el-input style="width: 180px;" :value="inspectionForm.code" disabled autocomplete="off" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row > |
| | | <el-col :span="8"> |
| | | <el-form-item label="样品名称:" > |
| | | <el-input style="width: 180px;" :value="inspectionForm.materialName" disabled autocomplete="off" /> |
| | | <el-input style="width: 180px;" :value="inspectionForm.name" disabled autocomplete="off" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="8"> |
| | | <el-form-item label="规格型号:"> |
| | | <el-input style="width: 180px;" :value="inspectionForm.specificationsModels" disabled autocomplete="off" /> |
| | | <el-input style="width: 180px;" :value="inspectionForm.specifications" disabled autocomplete="off" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="8"> |
| | |
| | | <el-row > |
| | | <el-col :span="8"> |
| | | <el-form-item label="数量:" > |
| | | <el-input style="width: 180px;" :value="inspectionForm.quantity" disabled autocomplete="off" /> |
| | | <el-input style="width: 180px;" :value="inspectionForm.num" disabled autocomplete="off" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="8"> |
| | | <el-form-item label="报检日期:" > |
| | | <el-input style="width: 180px;" :value="inspectionForm.dateSurvey" disabled autocomplete="off" /> |
| | | <el-input style="width: 180px;" :value="inspectionForm.endTime" disabled autocomplete="off" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="8"> |
| | | <el-form-item label="报检人:"> |
| | | <el-input style="width: 180px;" :value="inspectionForm.surveyor" disabled autocomplete="off" /> |
| | | <el-input style="width: 180px;" :value="inspectionForm.userName" disabled autocomplete="off" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | |
| | | <div class="header"> |
| | | <span style="font-size: 14px">检验项目</span> |
| | | <div> |
| | | <el-button type="primary" plain size="mini">保存</el-button> |
| | | <!-- <el-button type="primary" plain size="mini">保存</el-button> --> |
| | | <el-button @click="showNewPage = false" type="primary" plain size="mini" icon="el-icon-back">返回</el-button> |
| | | </div> |
| | | </div> |
| | |
| | | :header-cell-style="{border:'0px',background:'#f5f7fa',color:'#606266',boxShadow: 'inset 0 1px 0 #ebeef5',textAlign: 'center'}" |
| | | :data="inspectionItems"> |
| | | <el-table-column type="index" label="序号" width="60"></el-table-column> |
| | | <el-table-column prop="project" label="项目" width="250"></el-table-column> |
| | | <el-table-column prop="name" label="项目" width="250"></el-table-column> |
| | | <el-table-column prop="unit" label="单位" width="125"></el-table-column> |
| | | <el-table-column prop="standardVal" label="标准值" width="125"></el-table-column> |
| | | <el-table-column prop="controlVal" label="内测值" width="125"></el-table-column> |
| | | <el-table-column prop="detectionVal" label="检验值" width="125"></el-table-column> |
| | | <el-table-column prop="checker" label="检验人"> |
| | | <el-table-column prop="required" label="标准值" width="125"></el-table-column> |
| | | <el-table-column prop="internal" label="内测值" width="125"></el-table-column> |
| | | <el-table-column prop="testValue" label="检验值" width="125"></el-table-column> |
| | | <el-table-column prop="userName" label="检验人"> |
| | | <template slot-scope="scope"> |
| | | <el-select v-model="scope.row.checker" size="small" slot="append" style="width: 260px;"> |
| | | <el-option v-for="item in checkeroptions" :key="item.value" :label="item.label">{{ item.label }}</el-option> |
| | | <el-option v-for="(item,index) in checkeroptions" :key="index" :value="item.value" :label="item.label">{{ item.label }}</el-option> |
| | | </el-select> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="device" label="试验设备"> |
| | | <template slot-scope="scope"> |
| | | <el-select v-model="scope.row.device" size="small" slot="append" style="width: 260px;"> |
| | | <el-option v-for="item in deviceoptions" :key="item.value" :label="item.label">{{ item.label }}</el-option> |
| | | <el-option v-for="(item,index) in deviceoptions" :key="index" :value="item.value" :label="item.label">{{ item.label }}</el-option> |
| | | </el-select> |
| | | </template> |
| | | </el-table-column> |
| | |
| | | </template> |
| | | |
| | | <script> |
| | | import { getRawMaterialList } from '@/api/inspection/rawmaterial' |
| | | import { getRawMaterialList,addInspect,selectInspectsListById } from '@/api/inspection/rawmaterial' |
| | | export default { |
| | | data() { |
| | | return { |
| | | insertData:{ |
| | | |
| | | }, |
| | | addReportVisible: false, |
| | | checked: false, |
| | | resultData : {}, |
| | | checkData:[], |
| | | form: [], |
| | | searchData: { |
| | | code: '', |
| | |
| | | total:20, |
| | | data: '', |
| | | showNewPage: false, |
| | | inspectionForm:{ |
| | | createTime: '2023-07-28', |
| | | supplier_name: '国网山东省电力有限公司', |
| | | materialCoding: 'BP214274', |
| | | materialName: '铝包钢绞线', |
| | | specificationsModels: 'JLHA/G1A-185/30-26/7', |
| | | unit: '吨', |
| | | quantity: 21, |
| | | dateSurvey: '2023-08-02', |
| | | surveyor: '黄小明', |
| | | inspectionDate: '2023-12-09', |
| | | }, |
| | | inspectionItems:[{ |
| | | project:'导线外径', |
| | | unit: 'mm', |
| | | standardVal: '30.0', |
| | | controlVal: '30.0', |
| | | detectionVal: '30.0', |
| | | device:'', |
| | | checker: '', |
| | | },{ |
| | | project:'导线外径', |
| | | unit: 'mm', |
| | | standardVal: '30.0', |
| | | controlVal: '30.0', |
| | | detectionVal: '30.0', |
| | | device:'', |
| | | checker: '' |
| | | },{ |
| | | project:'导线外径', |
| | | unit: 'mm', |
| | | standardVal: '30.0', |
| | | controlVal: '30.0', |
| | | detectionVal: '30.0', |
| | | device:'', |
| | | checker: '' |
| | | },{ |
| | | project:'导线外径', |
| | | unit: 'mm', |
| | | standardVal: '30.0', |
| | | controlVal: '30.0', |
| | | detectionVal: '30.0', |
| | | device:'', |
| | | checker: '' |
| | | },{ |
| | | project:'导线外径', |
| | | unit: 'mm', |
| | | standardVal: '30.0', |
| | | controlVal: '30.0', |
| | | detectionVal: '30.0', |
| | | device:'', |
| | | checker: '' |
| | | },{ |
| | | project:'导线外径', |
| | | unit: 'mm', |
| | | standardVal: '30.0', |
| | | controlVal: '30.0', |
| | | detectionVal: '30.0', |
| | | device:'', |
| | | checker: '' |
| | | }] |
| | | inspectionForm:{}, |
| | | inspectionItems:[] |
| | | } |
| | | }, |
| | | created(){ |
| | | this.getRawMaterialList() |
| | | }, |
| | | methods: { |
| | | removeFun(row){ |
| | | this.$confirm('确认删除该数据吗?', '提示', { |
| | | confirmButtonText: '确定', |
| | | cancelButtonText: '取消', |
| | | type: 'warning' |
| | | }).then(() => { |
| | | this.$message({ |
| | | type: 'success', |
| | | message: '删除成功!' |
| | | }); |
| | | }).catch(() => {}); |
| | | }, |
| | | checkSelect(row,index){ |
| | | if(row.type === 1){ |
| | | return false; |
| | | }else{ |
| | | return true; |
| | | } |
| | | }, |
| | | handleSelectionChange(val){ |
| | | this.checkData = val; |
| | | console.log(val); |
| | | }, |
| | | //生成报检单按钮 |
| | | addReportBtn(){ |
| | | let arr = this.checkData; |
| | | if(arr.length < 1){ |
| | | this.$message.error("请选择一条数据!"); |
| | | }else{ |
| | | if(arr.length > 1){ |
| | | this.$message.error("最多选择一条数据!"); |
| | | }else{ |
| | | //添加报检单 |
| | | let val = arr[0]; |
| | | let obj = { |
| | | "endTime": val.dateSurvey, |
| | | "experiment": "", |
| | | "formTime": val.createTime, |
| | | "id": val.id, |
| | | "mcode": val.materialCoding, |
| | | "name": val.materialName, |
| | | "num": val.quantity, |
| | | "specifications": val.specificationsModels, |
| | | "startTime": val.inspectionDate, |
| | | "supplier": val.supplierName, |
| | | "type": val.type, |
| | | "unit": val.unit, |
| | | "version": val.version |
| | | } |
| | | this.createReport(obj); |
| | | this.showNewPage = true; |
| | | } |
| | | } |
| | | }, |
| | | //生成报价单 |
| | | async createReport(param){ |
| | | await addInspect(param); |
| | | const res2 = await selectInspectsListById({ id : 59}); |
| | | this.resultData = res2.data; |
| | | this.inspectionForm = res2.data; |
| | | this.inspectionItems = res2.data.insProducts; |
| | | |
| | | }, |
| | | // 获取分页列表数据 |
| | | async getRawMaterialList(){ |
| | | const res = await getRawMaterialList({pageNo: this.currentPage,pageSize:this.pageSize}) |
| | | // console.log(res) |
| | | this.inspectionTable = res.data.row |
| | | this.data = res.data.row |
| | | console.log(res.data.row); |
| | | this.total = res.data.total |
| | | }, |
| | | async search(){ |
| | |
| | | pageNo: this.currentPage, |
| | | pageSize: this.pageSize |
| | | }) |
| | | // console.log(res) |
| | | this.inspectionTable = res.data.row |
| | | this.data = res.data.row |
| | | this.total = res.data.total |
| | |
| | | }, |
| | | radioclick(){ |
| | | this.searchData.state = this.radioValue |
| | | // console.log(this.radioValue) |
| | | this.inspectionTable = this.data.filter((item)=>{ |
| | | return item.condition === this.radioValue |
| | | }) |
| | |
| | | }, |
| | | // 每页条数改变时触发 选择一页显示多少行 |
| | | handleSizeChange(val) { |
| | | console.log(`每页 ${val} 条`) |
| | | this.pageSize = val |
| | | this.getRawMaterialList({pageNo: this.currentPage,pageSize:this.pageSize}) |
| | | }, |
| | | // 当前页改变时触发 跳转其他页 |
| | | handleCurrentChange(val) { |
| | | console.log(`当前页: ${val}`) |
| | | this.currentPage = val |
| | | this.getRawMaterialList({pageNo: this.currentPage,pageSize:this.pageSize}) |
| | | } |
| | |
| | | } |
| | | </script> |
| | | |
| | | <style scoped> |
| | | <style scoped lang="scss"> |
| | | .content-main{ |
| | | height: 100%; |
| | | .top-bar{ |