| | |
| | | </div> |
| | | |
| | | <div class="row" v-for="sub in item.dataLists" :key="sub.name"> |
| | | <div class="name">{{ sub.name }}</div> |
| | | <div class="column"> |
| | | <div class="name">{{ sub.name }}</div> |
| | | <div class="column-item" v-for="(sub, index) in sub.value" :key="index">{{ sub }}</div> |
| | | </div> |
| | | </div> |
| | |
| | | <el-dialog class="prop_dialog" width="80%" v-if="isRenderDialog" :title="dialogTitle" :visible.sync="asyncVisible" |
| | | @close="closeDialog"> |
| | | <el-form ref="ruleForm" class="rule_form" :model="ruleForm" :rules="rules"> |
| | | <el-form-item label="拌合站屏:" prop="mixingSignboardId"> |
| | | <el-select size="mini" v-model="ruleForm.mixingSignboardId" :disabled="isUpdate" placeholder="请选择拌合站屏" |
| | | <el-form-item label="拌和站屏:" prop="mixingSignboardId"> |
| | | <el-select size="mini" v-model="ruleForm.mixingSignboardId" :disabled="isUpdate" placeholder="请选择拌和站屏" |
| | | @change="changeSelectForm($event)"> |
| | | <el-option v-for="item in selects.screenNames" :key="item.value" :label="item.label" |
| | | :value="item.value"></el-option> |
| | |
| | | <div style="display: flex;"> |
| | | <div style="margin-right: 10px;" v-for="(item, index) in ruleForm.infos " :key="index"> |
| | | <el-form-item :label="index === 0 ? '材料名称' : ''" :prop="`infos.${index}.dictId`"> |
| | | <el-select v-model="item.dictId" size="mini" placeholder="请选择材料名称"> |
| | | <!-- <el-select v-model="item.dictId" size="mini" placeholder="请选择材料名称"> |
| | | <el-option v-for="item in selects.materials" :key="item.value" :label="item.label" |
| | | :value="item.value"></el-option> |
| | | </el-select> |
| | | </el-select> --> |
| | | <el-input v-model="item.dictId" size="mini" placeholder="请输入" clearable></el-input> |
| | | </el-form-item> |
| | | <el-form-item :label="index === 0 ? '规格型号' : ''" :prop="`infos.${index}.spec`"> |
| | | <el-input v-model="item.spec" size="mini" placeholder="请输入" clearable></el-input> |
| | |
| | | times: [], // 时间范围 |
| | | selects: { |
| | | screenNames: [], // 配合比屏 |
| | | materials: [] // 材料名称 |
| | | // materials: [] // 材料名称[先改成输入,,字典表材料不匹配] |
| | | }, // 下拉框状态选择汇总 |
| | | tableData: [{ |
| | | inType: '', // 录入方式 |
| | |
| | | construction: '', // 施工部位 |
| | | mixingConsumeId: '', // 每个材料id |
| | | dataLists: [ |
| | | {name: '材料名称', type: 'dictName', value: []}, // 材料名称 |
| | | {name: '材料名称', type: 'dictId', value: []}, // 材料名称 |
| | | {name: '规格型号', type: 'spec', value: []}, // 规格型号 |
| | | {name: '生产厂家', type: 'manufacturer', value: []}, // 生产厂家 |
| | | {name: '材料含水率(%)', type: 'watFull', value: []}, // 含水率 |
| | |
| | | }], |
| | | ruleForm: { |
| | | mixingSignboardId: '', // 屏名称id |
| | | proName: '', // 工程名称 [拌合站屏下拉框联动] |
| | | proName: '', // 工程名称 [拌和站屏下拉框联动] |
| | | constructionUnit: '', // 施工单位 |
| | | saveStamp: '', // 施工日期 |
| | | construction: '', // 施工部位 |
| | |
| | | pageNum: 1, |
| | | pageSize: 9999, |
| | | // stata: '', // 录入方式 |
| | | mixingSignboardId: '', // 拌合站屏名称 |
| | | mixingSignboardId: '', // 拌和站屏名称 |
| | | strTime: '', |
| | | endTime: '', |
| | | }, |
| | |
| | | 2: '手动', |
| | | } |
| | | this.rules = { |
| | | mixingSignboardId: [{required: true, message: '请选择拌合站屏', trigger: 'change'}], |
| | | mixingSignboardId: [{required: true, message: '请选择拌和站屏', trigger: 'change'}], |
| | | proName: [{required: true, message: '请输入工程名称', trigger: 'change'}], |
| | | constructionUnit: [{required: true, message: '请输入工程名称', trigger: 'blur'}], |
| | | saveStamp: [{required: true, message: '请输入施工日期', trigger: 'blur'}], |
| | |
| | | construction: '', // 施工部位 |
| | | mixingConsumeId: '', // 每个材料id |
| | | dataLists: [ |
| | | {name: '材料名称', type: 'dictName', value: []}, // 材料名称 |
| | | {name: '材料名称', type: 'dictId', value: []}, // 材料名称 |
| | | {name: '规格型号', type: 'spec', value: []}, // 规格型号 |
| | | {name: '生产厂家', type: 'manufacturer', value: []}, // 生产厂家 |
| | | {name: '材料含水率(%)', type: 'watFull', value: []}, // 含水率 |
| | |
| | | }) |
| | | }, |
| | | //获取字典表材料名称 |
| | | async getDicFilteredData() { |
| | | let params = {pageNum: 1, pageSize: 100000000} |
| | | let {data} = await this.$api.Dictionary.searchDictionary(params) |
| | | data.list.forEach(item => { |
| | | if (item.dictType === 'pipe_materials') { |
| | | this.selects.materials.push({ |
| | | label: item.dictName, |
| | | value: item.dictId, |
| | | }) |
| | | } |
| | | }) |
| | | }, |
| | | // async getDicFilteredData() { |
| | | // let params = {pageNum: 1, pageSize: 100000000} |
| | | // let {data} = await this.$api.Dictionary.searchDictionary(params) |
| | | // data.list.forEach(item => { |
| | | // if (item.dictType === 'pipe_materials') { |
| | | // this.selects.materials.push({ |
| | | // label: item.dictName, |
| | | // value: item.dictId, |
| | | // }) |
| | | // } |
| | | // }) |
| | | // }, |
| | | // 获取配比屏名称 |
| | | async getScreenNames() { |
| | | const params = {pageNum: 1, pageSize: 9999} |
| | |
| | | if (!this.isRenderDialog) { |
| | | this.isRenderDialog = true |
| | | } |
| | | if (!this.selects.materials.length) { |
| | | await this.getDicFilteredData() |
| | | } |
| | | // if (!this.selects.materials.length) { |
| | | // await this.getDicFilteredData() |
| | | // } |
| | | this.asyncVisible = true |
| | | this.$nextTick(() => { |
| | | resolve() |
| | |
| | | changeSelectForm(val) { |
| | | let item = this.selects.screenNames.find(obj => obj.value === val) |
| | | this.ruleForm.proName = item.proName |
| | | this.ruleForm.constructionUnit = item.constructionUnit |
| | | } |
| | | } |
| | | } |
| | |
| | | .row { |
| | | flex: 1; |
| | | width: 100%; |
| | | height: 40px; |
| | | min-height: 40px; |
| | | margin: 0 -1px -1px 0; |
| | | text-align: center; |
| | | line-height: 40px; |
| | |
| | | align-items: center; |
| | | float: left; |
| | | width: 160px; |
| | | height: 100%; |
| | | margin: -1px -1px -1px 0; |
| | | color: #BEE2F0; |
| | | border: 1px solid #01B3EF; |
| | |
| | | justify-content: center; |
| | | align-items: center; |
| | | flex: 1; |
| | | padding: 0 4px; |
| | | line-height: 24px; |
| | | margin: -1px -1px -1px 0; |
| | | border: 1px solid #01B3EF; |
| | | word-break: break-all; |
| | | } |
| | | } |
| | | } |