| | |
| | | style="width: 160px;" |
| | | @keyup.enter="handleQuery" /> |
| | | </el-form-item> |
| | | <el-form-item label="销售合同号:" |
| | | prop="salesContractNo"> |
| | | <el-input v-model="searchForm.salesContractNo" |
| | | placeholder="请输入" |
| | | clearable |
| | | style="width: 160px;" |
| | | @keyup.enter="handleQuery" /> |
| | | </el-form-item> |
| | | <el-form-item label="需求日期范围:" |
| | | prop="dateRange"> |
| | | <el-date-picker v-model="searchForm.dateRange" |
| | |
| | | <template #qtyRequired="{ row }"> |
| | | {{ row.qtyRequired || '-' }}<span style="color:rgba(12, 46, 40, 0.76)"> {{ row.unit || '方' }}</span> |
| | | </template> |
| | | <template #salesContractNo="{ row }"> |
| | | <el-button type="primary" |
| | | text |
| | | link |
| | | @click="showDetail(row)">{{ row.salesContractNo }} |
| | | </el-button> |
| | | </template> |
| | | </PIMTable> |
| | | </div> |
| | | <!-- 合并下发弹窗 --> |
| | |
| | | </el-form> |
| | | <template #footer> |
| | | <span class="dialog-footer"> |
| | | <el-button @click="isShowNewModal = false">取消</el-button> |
| | | <el-button type="primary" |
| | | @click="handleMergeSubmit">确定下发</el-button> |
| | | <el-button @click="isShowNewModal = false">取消</el-button> |
| | | </span> |
| | | </template> |
| | | </el-dialog> |
| | |
| | | </el-form> |
| | | <template #footer> |
| | | <span class="dialog-footer"> |
| | | <el-button @click="dialogVisible = false">取消</el-button> |
| | | <el-button type="primary" |
| | | @click="handleSubmit">确定</el-button> |
| | | <el-button @click="dialogVisible = false">取消</el-button> |
| | | </span> |
| | | </template> |
| | | </el-dialog> |
| | |
| | | productionPlanUpdate, |
| | | productionPlanDelete, |
| | | productionPlanCombine, |
| | | exportProductionPlan, |
| | | } from "@/api/productionPlan/productionPlan.js"; |
| | | import { productTreeList, modelListPage } from "@/api/basicData/product.js"; |
| | | import PIMTable from "./components/PIMTable.vue"; |
| | |
| | | const loadProdData = () => { |
| | | console.log("Mock loadProdData called"); |
| | | return Promise.resolve({ code: 200, msg: "同步成功" }); |
| | | }; |
| | | |
| | | const exportProductionPlan = () => { |
| | | console.log("Mock exportProductionPlan called"); |
| | | return Promise.resolve(); |
| | | }; |
| | | |
| | | // const productionPlanCombine = payload => { |
| | |
| | | return params == "销售" ? "销售" : "内部"; |
| | | }, |
| | | }, |
| | | |
| | | { |
| | | label: "产品名称", |
| | | prop: "productName", |
| | |
| | | formatData: cell => (cell ? dayjs(cell).format("YYYY-MM-DD") : ""), |
| | | }, |
| | | { |
| | | label: "销售合同号", |
| | | prop: "salesContractNo", |
| | | width: "200px", |
| | | dataType: "slot", |
| | | slot: "salesContractNo", |
| | | }, |
| | | { |
| | | label: "客户名称", |
| | | prop: "customerName", |
| | | width: "150px", |
| | | }, |
| | | { |
| | | label: "项目名称", |
| | | prop: "projectName", |
| | | width: "150px", |
| | | }, |
| | | { |
| | | label: "备注", |
| | | width: "150px", |
| | | prop: "remark", |
| | |
| | | type: "primary", |
| | | link: true, |
| | | showHide: row => { |
| | | return row.status == 0; |
| | | return row.status == 0 && row.source != "销售"; |
| | | }, |
| | | clickFun: row => { |
| | | handleEdit(row); |
| | |
| | | const data = reactive({ |
| | | searchForm: { |
| | | mpsNo: "", |
| | | salesContractNo: "", |
| | | productName: "", |
| | | model: "", |
| | | status: "", |
| | |
| | | } |
| | | Object.assign(searchForm.value, { |
| | | mpsNo: "", |
| | | salesContractNo: "", |
| | | productName: "", |
| | | model: "", |
| | | status: "", |
| | |
| | | // 打开弹窗 |
| | | isShowNewModal.value = true; |
| | | }; |
| | | const showDetail = row => { |
| | | router.push({ |
| | | path: "/salesManagement/salesLedger", |
| | | query: { |
| | | salesContractNo: row.salesContractNo, |
| | | }, |
| | | }); |
| | | }; |
| | | |
| | | // 处理合并下发提交 |
| | | const handleMergeSubmit = () => { |