| | |
| | | </el-date-picker> |
| | | </div> |
| | | </el-col> |
| | | <el-col class="search_thing" :span="6"> |
| | | <el-col class="search_thing" :span="6" v-if="addObj.formType!='其他成品'&&addObj.formType"> |
| | | <div class="search_label"><span class="required-span">* </span>样机完成时间:</div> |
| | | <div class="search_input"> |
| | | <el-date-picker |
| | |
| | | <div style="height: auto;"> |
| | | <div class="search" v-if="active==1" style="display: flex;background: transparent;"> |
| | | <div class="search_thing"> |
| | | <div class="search_label">样品名称:</div> |
| | | <div class="search_input"> |
| | | <el-input size="small" v-model="allInfo.sample" @change="changeModel('sample')"></el-input> |
| | | </div> |
| | | </div> |
| | | <div class="search_thing"> |
| | | <div class="search_label">样品类别:</div> |
| | | <div class="search_input"> |
| | | <el-select v-model="model" :placeholder="active>1 ? '' : '请输入'" filterable allow-create default-first-option size="small" |
| | | @change="changeModel"> |
| | | <el-select v-model="allInfo.model" :placeholder="active>1 ? '' : '请输入'" filterable allow-create default-first-option size="small" |
| | | @change="changeModel('model')"> |
| | | <el-option v-for="item in models" :key="item.value" :label="item.label" :value="item.value"> |
| | | </el-option> |
| | | </el-select> |
| | | </div> |
| | | </div> |
| | | <div class="search_thing"> |
| | | <div class="search_label">产品型号:</div> |
| | | <div class="search_input"> |
| | | <el-input size="small" v-model="allInfo.modelNum" @change="changeModel('modelNum')"></el-input> |
| | | </div> |
| | | </div> |
| | | <div class="search_thing"> |
| | | <div class="search_label">试验标准:</div> |
| | | <div class="search_input"> |
| | | <el-select v-model="allInfo.testRequirements" :placeholder="active>1 ? '' : '请输入'" filterable allow-create default-first-option size="small" |
| | | @change="changeModel('testRequirements')"> |
| | | <el-option v-for="item in standard" :key="item.value" :label="item.label" :value="item.value"> |
| | | </el-option> |
| | | </el-select> |
| | | </div> |
| | |
| | | <el-table-column prop="testRequirements" label="试验标准" align="center" min-width="100"> |
| | | <template slot-scope="scope"> |
| | | <el-select v-model="scope.row.testRequirements" :disabled="scope.row.model==null||active>1" |
| | | placeholder="试验标准" size="small" :readonly="active>1" style="width: 100%;" clearable> |
| | | placeholder="试验标准" size="small" :readonly="active>1" style="width: 100%;" clearable @change="changeModel0(scope.row)"> |
| | | <el-option v-for="item in standard" :key="item.id" :label="item.label" :value="item.value"> |
| | | </el-option> |
| | | </el-select> |
| | |
| | | <template slot-scope="scope"> |
| | | <el-input size="small" placeholder="要求描述" v-model="scope.row.tell" clearable type="textarea" |
| | | :autosize="{ minRows: 1, maxRows: 3}" @change="e=>requestChange(e,scope.row,'tell')" |
| | | v-if="active==1"></el-input> |
| | | v-if="active==1" :disabled="!!scope.row.tell&&scope.row.tell.includes('[')&&scope.row.tell.includes(']')&&scope.row.tell.includes(',')"></el-input> |
| | | <span v-else> |
| | | <template >{{ scope.row.tell }}</template> |
| | | </span> |
| | |
| | | <template slot-scope="scope"> |
| | | <el-input size="small" placeholder="要求值" v-model="scope.row.ask" clearable type="textarea" |
| | | :autosize="{ minRows: 1, maxRows: 3}" @change="e=>requestChange(e,scope.row,'ask')" |
| | | v-if="active==1&&scope.row.inspectionValueType!='5'"></el-input> |
| | | v-if="active==1&&scope.row.inspectionValueType!='5'" :disabled="!!scope.row.ask&&scope.row.ask.includes('[')&&scope.row.ask.includes(']')&&scope.row.ask.includes(',')"></el-input> |
| | | <span v-else> |
| | | <!-- <template v-if="(scope.row.ask.indexOf('D')>-1 |
| | | ||scope.row.ask.indexOf('W')>-1 |
| | |
| | | 1、委托方承诺提供的信息与样品的真实性;<br/> |
| | | 2、委托送样检验结果仅适用于收到的样品;<br/> |
| | | 3、试验过程导致的样品损坏、配件损坏、损耗,本测试场不承担赔偿责任;<br/> |
| | | 4、实验室承诺公正开展检测活动,并承诺保守在检测活动过程中所获知的保密信息。</p> |
| | | 4、实验室承诺公正开展检测活动,并承诺保守在检测活动过程中所获知的保密信息。 |
| | | </p> |
| | | </div> |
| | | </template> |
| | | |
| | |
| | | num:null, |
| | | }, |
| | | powerShow:false, |
| | | powerTable:[] |
| | | powerTable:[], |
| | | allInfo:{ |
| | | model:null, |
| | | sample:null, |
| | | modelNum:null, |
| | | testRequirements:null, |
| | | } |
| | | } |
| | | }, |
| | | watch: { |
| | |
| | | } |
| | | }, |
| | | 'addObj.sample'(val) { |
| | | this.model = null |
| | | this.allInfo.model = null |
| | | this.allInfo.sample = null |
| | | this.allInfo.modelNum = null |
| | | this.allInfo.testRequirements = null |
| | | this.standardMethodListId = [] |
| | | }, |
| | | 'addObj.sampleNum'(val) { |
| | | this.model = null |
| | | this.allInfo.model = null |
| | | this.allInfo.sample = null |
| | | this.allInfo.modelNum = null |
| | | this.allInfo.testRequirements = null |
| | | this.standardMethodListId = [] |
| | | }, |
| | | active(val){ |
| | |
| | | this.$message.error('请输入样品型号') |
| | | }else if (!this.addObj.appointed) { |
| | | this.$message.error('请选择约定时间') |
| | | }else if (!this.addObj.issueTime) { |
| | | this.$message.error('请选择样机完成时间') |
| | | } else if (!this.sampleList.every(m => m.standardMethodListId&&m.standardMethodListId.length>0)) { |
| | | }else if (!this.sampleList.every(m => m.standardMethodListId&&m.standardMethodListId.length>0)) { |
| | | this.$message.error('请选择检验标准') |
| | | } else if(this.addObj.formType&&this.addObj.formType!='其他成品'&&!this.addObj.issueUser){ |
| | | this.$message.error('请选择通知至样机员') |
| | | }else if(this.addObj.formType&&this.addObj.formType!='其他成品'&&!this.addObj.issueTime){ |
| | | this.$message.error('请选择样机完成时间') |
| | | }else{ |
| | | //校验检验项的要求值和要求描述,仅委托要求 |
| | | // if(this.active==1&&this.isAskOnlyRead){ |
| | |
| | | |
| | | let projectNum = this.totalArr.filter(a => a.state == 1).length |
| | | if(projectNum==0){ |
| | | this.$confirm('检验项目为空,是否确认提交?', "提示", { |
| | | confirmButtonText: "确定", |
| | | cancelButtonText: "取消", |
| | | type: "warning" |
| | | }).then(() => { |
| | | this.saveMethod(sampleList) |
| | | }).catch(() => {}) |
| | | // this.$confirm('检验项目为空,是否确认提交?', "提示", { |
| | | // confirmButtonText: "确定", |
| | | // cancelButtonText: "取消", |
| | | // type: "warning" |
| | | // }).then(() => { |
| | | // this.saveMethod(sampleList) |
| | | // }).catch(() => {}) |
| | | return this.$message.error('请添加检验项目') |
| | | }else{ |
| | | let isRTS = this.totalArr.find(a => a.ask != null && this.symbolList.find(b=>a.ask&&a.ask.includes(b)) && a.state == 1) |
| | | if (isRTS&&this.PROJECT=='检测中心') { |
| | |
| | | }, |
| | | saveMethod(sampleList){ |
| | | let isHaveAsk = this.totalArr.filter(a => (a.ask === null||a.ask=='')&&a.state==1) |
| | | let isHaveAsk0 = this.totalArr.filter(a => (a.ask=='/'||a.ask=='-'||a.ask=='——'||((/\d/.test(a.ask))&&(a.ask.includes('<')||a.ask.includes('>')||a.ask.includes('=')||a.ask.includes('>')||a.ask.includes('<')||a.ask.includes('≥')||a.ask.includes('≤'))))&&a.state==1) |
| | | let stateArr = this.totalArr.filter(a=>a.state==1) |
| | | if (isHaveAsk.length > 0) { |
| | | this.$message({ |
| | | type: 'error', |
| | | message: '请填写要求值后再提交' |
| | | }) |
| | | return false; |
| | | } |
| | | if (isHaveAsk0.length <stateArr.length) { |
| | | this.$message({ |
| | | type: 'error', |
| | | message: '要求值输入格式不对,可输入/、-、——代表不判定,<、=、>、≥、≤加上数字代表范围,请重新输入', |
| | | duration: 8 * 1000 |
| | | }) |
| | | return false; |
| | | } |
| | |
| | | } |
| | | }) |
| | | }, |
| | | changeModel() { |
| | | changeModel(type) { |
| | | this.sampleList.forEach(a => { |
| | | let obj = this.sampleIds.find(b => b == a.id) |
| | | if (obj) { |
| | | a.model = this.model |
| | | this.$set(a,type, this.allInfo[type]) |
| | | if(type=='testRequirements'&&a.standardMethodListId&&a.standardMethodListId.length>0){ |
| | | this.methodChange(a.standardMethodListId, a) |
| | | } |
| | | // a[type] = this.allInfo[type] |
| | | } |
| | | }) |
| | | }, |
| | | changeModel0(row){ |
| | | if(row.standardMethodListId&&row.standardMethodListId.length>0){ |
| | | this.methodChange(row.standardMethodListId, row) |
| | | } |
| | | }, |
| | | changeStandardMethodListId() { |
| | | this.sampleList.forEach(a => { |
| | | let obj = this.sampleIds.find(b => b == a.id) |