| | |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item v-if="mesSetting.route" label="关联工序" style=" display: flex;"> |
| | | <el-form-item label="关联工序" style=" display: flex;"> |
| | | <el-select |
| | | v-model="form.stepcode" |
| | | :disabled="form.routecode===''" |
| | | :disabled="mesSetting.route?form.routecode==='':form.partcode===''" |
| | | :popper-append-to-body="false" |
| | | style="width: 200px" |
| | | placeholder="请选择" |
| | |
| | | :title="operation==='add'?'新增':'编辑'" |
| | | :visible.sync="dialogVisible" |
| | | width="1100px" |
| | | top="15vh" |
| | | top="5vh" |
| | | :close-on-click-modal="false" |
| | | @closed="handleClose" |
| | | @close="handleClose" |
| | |
| | | </el-form-item> |
| | | </div> |
| | | </el-form> |
| | | |
| | | <!-- :expand-row-keys="expandRowKeys"--> |
| | | <!-- row-key="code"--> |
| | | <el-table |
| | | :data="stepDialogArr" |
| | | style="width: 100%" |
| | | height="300" |
| | | height="600" |
| | | |
| | | border |
| | | :header-cell-style="this.$headerCellStyle" |
| | | :cell-style="this.$cellStyle" |
| | | :row-class-name="tableRowClassName" |
| | | > |
| | | <el-table-column type="expand"> |
| | | <template slot-scope="props"> |
| | | <el-table |
| | | :data="props.row.children" |
| | | style="width: 96%;margin: auto;" |
| | | border |
| | | :row-class-name="tableRowClassName" |
| | | > |
| | | <el-table-column |
| | | prop="eqp_code" |
| | | label="设备/往来编码" |
| | | min-width="120" |
| | | /> |
| | | <el-table-column |
| | | prop="eqp_name" |
| | | label="设备/往来名称" |
| | | min-width="120" |
| | | /> |
| | | <el-table-column |
| | | prop="eqp_value" |
| | | label="设备节拍" |
| | | min-width="150" |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <div style="display: flex"> |
| | | <el-input |
| | | v-model="row.eqp_value" |
| | | placeholder="请输入" |
| | | oninput="value=value.replace(/[^0-9.]/g,'')" |
| | | @change="val=>eqpValueChange(val,row)" |
| | | /> |
| | | <div style="margin-left: 5px">秒</div> |
| | | </div> |
| | | |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="stand_value" |
| | | label="生产节拍" |
| | | min-width="120" |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <div>{{ row.stand_value + ' ' + '秒' }}</div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="cavity_qty" |
| | | label="腔型数" |
| | | min-width="120" |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <el-input |
| | | v-model="row.cavity_qty" |
| | | placeholder="请输入" |
| | | oninput="value=value.replace(/[^0-9.]/g,'')" |
| | | @change="val=>cavityQtyChange(val,row)" |
| | | /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="unprice" |
| | | label="工序工价" |
| | | min-width="120" |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <el-input v-model="row.unprice" oninput="value=value.replace(/[^0-9.]/g,'')" /> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="step_seq" |
| | | prop="seq" |
| | | label="工序顺序" |
| | | width="100" |
| | | /> |
| | | <el-table-column |
| | | prop="step_code" |
| | | prop="code" |
| | | label="工序编码" |
| | | width="200" |
| | | /> |
| | | <el-table-column |
| | | prop="step_name" |
| | | prop="name" |
| | | label="工序名称" |
| | | width="200" |
| | | /> |
| | |
| | | directives: { elDragDialog, waves }, |
| | | data() { |
| | | return { |
| | | mesSetting: JSON.parse(localStorage.getItem('mesSetting')), |
| | | mainHeight: 0, |
| | | tableHeight: 0, |
| | | form: { |
| | |
| | | width: false, |
| | | prop: 'unprice', |
| | | label: '计件单价', |
| | | id: 17, |
| | | id: 12, |
| | | show: true, |
| | | fixed: false, |
| | | sortable: true |
| | | }, |
| | | { |
| | | minWidth: false, |
| | | width: 110, |
| | | prop: 'lm_user', |
| | | label: '创建人员', |
| | | id: 13, |
| | | show: true, |
| | | fixed: false, |
| | | sortable: true |
| | | }, |
| | | { |
| | | minWidth: false, |
| | | width: 160, |
| | | prop: 'lm_date', |
| | | label: '创建时间', |
| | | id: 14, |
| | | show: true, |
| | | fixed: false, |
| | | sortable: true |
| | |
| | | editStepName: '', // 编辑时加工工序名称 |
| | | operation: '', |
| | | |
| | | mesSetting: JSON.parse(localStorage.getItem('mesSetting')) |
| | | |
| | | expandRowKeys: []// 默认展开 |
| | | } |
| | | }, |
| | | |
| | |
| | | mounted() { |
| | | window.addEventListener('resize', this.getHeight) |
| | | this.getHeight() |
| | | |
| | | if (!this.mesSetting.route) { |
| | | this.tableColumnSettingsArray = this.tableColumnSettingsArray.filter(i => i.prop !== 'route_name') |
| | | } |
| | | }, |
| | | methods: { |
| | | tableColumnUpdate(val, isCopyTrue) { |
| | |
| | | }, |
| | | async partChange(val) { |
| | | const { data: res } = await PartSelectRpute({ partcode: val }) |
| | | this.routeArr = res |
| | | this.form.routecode = '' |
| | | if (this.mesSetting.route) { |
| | | this.routeArr = res |
| | | this.form.routecode = '' |
| | | } else { |
| | | this.stepArr = res |
| | | } |
| | | this.form.stepcode = '' |
| | | }, |
| | | async routeChange(val) { |
| | |
| | | async routeDialogChange(val) { |
| | | const { data: res } = await RouteSelectStep({ partcode: this.dialogForm.partcode, routecode: val }) |
| | | this.stepDialogArr = res |
| | | |
| | | this.expandRowKeys = this.stepDialogArr.map(i => { |
| | | if (i.children.length > 0) { |
| | | return i.code |
| | | } |
| | | }) |
| | | }, |
| | | |
| | | // 新增按钮 |
| | |
| | | this.$refs.dialogForm.validate(valid => { |
| | | if (valid) { |
| | | const children = [] |
| | | this.stepDialogArr.forEach(i => { |
| | | children.push({ |
| | | 'code': i.step_code, |
| | | 'name': i.step_name, |
| | | 'seq': i.step_seq, |
| | | 'isbott': i.isbott, |
| | | 'isend': i.isend, |
| | | 'unprice': i.unprice |
| | | }) |
| | | }) |
| | | // this.stepDialogArr.forEach(i => { |
| | | // children.push({ |
| | | // 'code': i.step_code, |
| | | // 'name': i.step_name, |
| | | // 'seq': i.step_seq, |
| | | // 'isbott': i.isbott, |
| | | // 'isend': i.isend, |
| | | // 'unprice': i.unprice |
| | | // }) |
| | | // }) |
| | | |
| | | const data = [ |
| | | { |
| | | 'partcode': this.dialogForm.partcode, |
| | | 'defaultroute_code': this.dialogForm.routecode, |
| | | 'children': children |
| | | 'children': this.stepDialogArr |
| | | } |
| | | ] |
| | | SaveBeatRate(data).then(res => { |
| | |
| | | } |
| | | }) |
| | | }, |
| | | |
| | | // 设备节拍值改变 |
| | | eqpValueChange(val, row) { |
| | | console.log(val, row) |
| | | if (parseFloat(row.cavity_qty) !== 0) { |
| | | row.stand_value = parseFloat((parseFloat(val) / parseFloat(row.cavity_qty)).toFixed(2)) |
| | | } else { |
| | | row.stand_value = 0 |
| | | } |
| | | }, |
| | | // 腔型数值改变 |
| | | cavityQtyChange(val, row) { |
| | | if (parseFloat(val) !== 0) { |
| | | row.stand_value = parseFloat((parseFloat(row.eqp_value) / parseFloat(val)).toFixed(2)) |
| | | } else { |
| | | row.stand_value = 0 |
| | | } |
| | | }, |
| | | // 获取页面高度 |
| | | getHeight() { |
| | | this.$nextTick(() => { |