| | |
| | | <template> |
| | | <el-dialog |
| | | v-model="dialogVisible" |
| | | :title="dialogType === 'add' ? '新增生产加工' : '编辑生产加工'" |
| | | :title="dialogType === 'add' ? '新增生产加工' : dialogType === 'viewRow' ? '查看生产加工' : '编辑生产加工'" |
| | | width="1200px" |
| | | :close-on-click-modal="false" |
| | | @close="handleClose" |
| | | > |
| | | <el-row :gutter="10" style="margin-bottom: 10px"> |
| | | <el-row :gutter="10" style="margin-bottom: 10px" v-if="dialogType !== 'viewRow'"> |
| | | <el-col :span="3"> |
| | | <el-button type="primary" @click="handlData" |
| | | > |
| | |
| | | </el-row> |
| | | <ETableModify |
| | | :columns="columns" |
| | | :showOperations="false" |
| | | :showOperations="dialogType !== 'viewRow'" |
| | | height="200" |
| | | @cell-edit="handleCellEdit" |
| | | :tableData="tableData" |
| | | :showOverflowTooltip="false" |
| | | @row-click="handleRowClick" |
| | | :editableColumns="['usedQuantity']" |
| | | :editableColumns="dialogType === 'viewRow' ? [] : ['usedQuantity']" |
| | | :editableCells="dialogType !== 'viewRow'" |
| | | @delete="handleRemoveItem" |
| | | /> |
| | | <div class="empty-table"> |
| | | <h1>生产明细</h1> |
| | | <el-row :gutter="10"> |
| | | <el-col :span="2"> |
| | | <el-button type="primary" @click="addNewRow"> |
| | | <el-button type="primary" @click="addNewRow" v-if="dialogType !== 'viewRow'"> |
| | | <el-icon> |
| | | <Plus/> |
| | | </el-icon> |
| | |
| | | <ProductionDetailsTable |
| | | v-model="detailsTableData" |
| | | :border="false" |
| | | :show-operations="true" |
| | | :show-operations="dialogType !== 'viewRow'" |
| | | :auto-calculate="true" |
| | | @input-change="handleDetailsChange" |
| | | @delete-row="handleDeleteRow" |
| | | :dialogType="dialogType" |
| | | /> |
| | | </div> |
| | | |
| | |
| | | <div class="dialog-footer"> |
| | | <el-button |
| | | @click="handleClose" |
| | | v-if="dialogType === 'add' || dialogType === 'edit'" |
| | | >取 消 |
| | | >{{ dialogType === 'viewRow' ? '关 闭' : '取 消' }} |
| | | </el-button |
| | | > |
| | | <!-- <el-button @click="handleReset" v-if="dialogType === 'edit'" |
| | | >重 置</el-button |
| | | > --> |
| | | <el-button type="primary" :loading="loading" @click="handleSubmit" |
| | | <el-button |
| | | v-if="dialogType !== 'viewRow'" |
| | | type="primary" |
| | | :loading="loading" |
| | | @click="handleSubmit" |
| | | >确 定 |
| | | </el-button |
| | | > |
| | |
| | | getCoalInfoList, |
| | | deleteProductionInventory, |
| | | } from "@/api/production/index.js"; |
| | | import { getSupplyList } from "@/api/procureMent/index.js" |
| | | import {validateFormData, validateNumber, deepClone, createDefaultProductionRow} from "@/utils/production"; |
| | | import {useCoalData} from "./useCoalData"; |
| | | import useUserStore from "@/store/modules/user"; |
| | |
| | | ]; |
| | | |
| | | const formalDatabaseColumns = ref([ |
| | | {prop: "supplierName", label: "供应商名称", minwidth: 150 |
| | | // ,formatter: (row) => { |
| | | // console.log(row); |
| | | // return supplierList.value[row.supplierId] || "--"; |
| | | // } |
| | | {prop: "supplierId", label: "供应商名称", minwidth: 150 |
| | | ,formatter: (row) => { |
| | | return supplierList.value.find(supplier => supplier.id === row.supplierId)?.supplierName || "--"; |
| | | } |
| | | }, |
| | | {prop: "coalId", label: "煤种", minwidth: 60, |
| | | formatter: (row) => { |
| | | // return coalList.value[row.coalId].coal || "--"; |
| | | return coalList.value.find(coal => coal.id === row.coalId)?.coal || "--"; |
| | | } |
| | | }, |
| | |
| | | // 获取配置数据 |
| | | const handlData = async () => { |
| | | innerVisible.value = true; |
| | | let getSupplier = await getOfficialAll(); |
| | | let OfficialAll = await getOfficialAll(); |
| | | let getSupplierList = await getSupplyList(); |
| | | let getCoalName = await getCoalInfoList(); |
| | | coalList.value = getCoalName.data || []; |
| | | supplierList.value = getSupplier.data || []; |
| | | if (getSupplier.code === 200) { |
| | | formalDatabaseData.value = getSupplier.data; |
| | | supplierList.value = getSupplierList.data || []; |
| | | if (OfficialAll.code === 200) { |
| | | formalDatabaseData.value = OfficialAll.data; |
| | | const existingOfficialIds = tableData.value |
| | | .map((item) => item.officialId) |
| | | .filter((id) => id); |
| | |
| | | dialogType.value = "add"; |
| | | }; |
| | | |
| | | const editInitialization = (data) => { |
| | | const editInitialization = (type,data) => { |
| | | copyForm.value = deepClone(data); |
| | | tableData.value = data.productionInventoryList || []; |
| | | detailsTableData.value = data.productionList || []; |
| | | dialogType.value = "edit"; |
| | | dialogType.value = type; |
| | | const existingOfficialIds = tableData.value |
| | | .map((item) => item.officialId) |
| | | .filter((id) => id); |