This commit is contained in:
Teo
2025-08-16 00:07:34 +08:00
18 changed files with 613 additions and 620 deletions

View File

@ -1,5 +1,5 @@
# 页面标题 # 页面标题
VITE_APP_TITLE = 新能源项目管理平台 VITE_APP_TITLE = 煤科建管平台
# 开发环境配置 # 开发环境配置
VITE_APP_ENV = 'development' VITE_APP_ENV = 'development'

View File

@ -1,5 +1,5 @@
# 页面标题 # 页面标题
VITE_APP_TITLE = 新能源项目管理平台 VITE_APP_TITLE = 煤科建管平台
# 生产环境配置 # 生产环境配置
VITE_APP_ENV = 'production' VITE_APP_ENV = 'production'

View File

@ -6,7 +6,7 @@
<meta name="renderer" content="webkit" /> <meta name="renderer" content="webkit" />
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1.0" /> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1.0" />
<link rel="icon" href="/favicon.ico" /> <link rel="icon" href="/favicon.ico" />
<title>新能源项目管理平台</title> <title>煤科建管平台</title>
<!--[if lt IE 11 <!--[if lt IE 11
]><script> ]><script>
window.location.href = '/html/ie.html'; window.location.href = '/html/ie.html';

View File

@ -34,7 +34,7 @@ defineProps({
} }
}); });
const title = ref('新能源项目管理平台'); const title = ref('煤科建管平台');
const settingsStore = useSettingsStore(); const settingsStore = useSettingsStore();
const sideTheme = computed(() => settingsStore.sideTheme); const sideTheme = computed(() => settingsStore.sideTheme);
</script> </script>

View File

@ -16,7 +16,8 @@ export const useNoticeStore = defineStore('notice', () => {
const addNotice = (notice: NoticeItem) => { const addNotice = (notice: NoticeItem) => {
console.log('🚀 ~ addNotice ~ notice:', notice); console.log('🚀 ~ addNotice ~ notice:', notice);
state.notices.push(notice); // 从前面录入
state.notices.unshift(notice);
}; };
const removeNotice = (notice: NoticeItem) => { const removeNotice = (notice: NoticeItem) => {

View File

@ -39,10 +39,12 @@
<template #default="scope"> <template #default="scope">
<el-row :gutter="10" class="mb8"> <el-row :gutter="10" class="mb8">
<el-col :span="1.5" v-if="scope.row.status === 'draft' || scope.row.status === 'cancel' || scope.row.status === 'back'"> <el-col :span="1.5" v-if="scope.row.status === 'draft' || scope.row.status === 'cancel' || scope.row.status === 'back'">
<el-button link type="primary" icon="Edit" @click="handleUpdate(scope.row)">审核</el-button> <el-button link type="primary" icon="Edit" @click="handleUpdate(scope.row)" v-hasPermi="['design:extract:query']">审核</el-button>
</el-col> </el-col>
<el-col :span="1.5" v-if="scope.row.status === 'finish'"> <el-col :span="1.5" v-if="scope.row.status === 'finish'">
<el-button link type="primary" icon="Download" @click="handleDownload(scope.row)">导出</el-button> <el-button link type="primary" icon="Download" @click="handleDownload(scope.row)" v-hasPermi="['design:extract:export']"
>导出</el-button
>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button

View File

@ -146,6 +146,7 @@
<el-button <el-button
type="primary" type="primary"
size="large" size="large"
v-hasPermi="['design:user:batch']"
@click="submitForm" @click="submitForm"
class="px-8 py-2.5 transition-all duration-300 transform hover:scale-105 bg-blue-500 hover:bg-blue-600 text-white font-medium" class="px-8 py-2.5 transition-all duration-300 transform hover:scale-105 bg-blue-500 hover:bg-blue-600 text-white font-medium"
> >

View File

@ -10,22 +10,9 @@
<el-form-item label="工程名称" prop="projectName"> <el-form-item label="工程名称" prop="projectName">
<el-input v-model="queryParams.projectName" placeholder="请输入工程名称" clearable @keyup.enter="handleQuery" /> <el-input v-model="queryParams.projectName" placeholder="请输入工程名称" clearable @keyup.enter="handleQuery" />
</el-form-item> </el-form-item>
<el-form-item label="提出单位" prop="submitUnit">
<el-input v-model="queryParams.submitUnit" placeholder="请输入提出单位" clearable @keyup.enter="handleQuery" />
</el-form-item>
<el-form-item label="专业" prop="specialty">
<el-input v-model="queryParams.specialty" placeholder="请输入专业" clearable @keyup.enter="handleQuery" />
</el-form-item>
<el-form-item label="卷册名称" prop="volumeName">
<el-input v-model="queryParams.volumeName" placeholder="请输入卷册名称" clearable @keyup.enter="handleQuery" />
</el-form-item>
<el-form-item label="卷册号" prop="volumeNo"> <el-form-item label="卷册号" prop="volumeNo">
<el-input v-model="queryParams.volumeNo" placeholder="请输入卷册号" clearable @keyup.enter="handleQuery" /> <el-input v-model="queryParams.volumeNo" placeholder="请输入卷册号" clearable @keyup.enter="handleQuery" />
</el-form-item> </el-form-item>
<el-form-item label="提出日期" prop="submitDate">
<el-date-picker clearable v-model="queryParams.submitDate" type="date" value-format="YYYY-MM-DD" placeholder="请选择提出日期" />
</el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" icon="Search" @click="handleQuery" v-hasPermi="['design:designChange:list']">搜索</el-button> <el-button type="primary" icon="Search" @click="handleQuery" v-hasPermi="['design:designChange:list']">搜索</el-button>
<el-button icon="Refresh" @click="resetQuery">重置</el-button> <el-button icon="Refresh" @click="resetQuery">重置</el-button>

View File

@ -17,9 +17,7 @@
<el-table-column label="备注" align="center" prop="remark" /> <el-table-column label="备注" align="center" prop="remark" />
<el-table-column label="操作" align="center" class-name="small-padding " width="240"> <el-table-column label="操作" align="center" class-name="small-padding " width="240">
<template #default="scope"> <template #default="scope">
<el-button v-hasPermi="['design:drawing:remove']" size="small" type="primary" icon="Download" @click="handleDownload(scope.row)" <el-button size="small" type="primary" icon="Download" @click="handleDownload(scope.row)">下载</el-button>
>下载</el-button
>
<el-button size="small" type="primary" icon="view" @click="handleViewHis(scope.row)">查阅记录</el-button> <el-button size="small" type="primary" icon="view" @click="handleViewHis(scope.row)">查阅记录</el-button>
</template> </template>
</el-table-column> </el-table-column>

View File

@ -85,12 +85,39 @@
</div> </div>
<!-- 操作按钮区域 --> <!-- 操作按钮区域 -->
<div class="flex justify-center gap-4 mt-8"> <div class="flex justify-center gap-4 mt-8">
<el-button type="primary" @click="submitForm" v-if="!form.id || form.status == 'draft'" size="large">确认提交</el-button> <el-button type="primary" @click="submitForm" v-hasPermi="['design:collect:add']" v-if="!form.id || form.status == 'draft'" size="large"
<!-- <el-button @click="resetForm" size="large">重置</el-button> --> >确认提交</el-button
<el-button type="primary" @click="update" v-show="form.id && form.status == 'draft'" icon="Edit" size="large">审核</el-button> >
<el-button type="primary" @click="update" v-show="form.status == 'back'" size="large" icon="Edit">重新发起审核</el-button> <el-button
<el-button type="primary" @click="onView" v-show="form.id && form.status != 'draft'" icon="view" size="large">查看流程</el-button> type="primary"
<el-button type="success" @click="onLoad" v-show="form.id && form.status != 'draft'" icon="Download" size="large">导出</el-button> @click="update"
v-hasPermi="['design:collect:query']"
v-show="form.id && form.status == 'draft'"
icon="Edit"
size="large"
>审核</el-button
>
<el-button type="primary" @click="update" v-hasPermi="['design:collect:query']" v-show="form.status == 'back'" size="large" icon="Edit"
>重新发起审核</el-button
>
<el-button
type="primary"
@click="onView"
v-hasPermi="['design:collect:query']"
v-show="form.id && form.status != 'draft'"
icon="view"
size="large"
>查看流程</el-button
>
<el-button
type="success"
v-hasPermi="['design:collect:export']"
@click="onLoad"
v-show="form.id && form.status != 'draft'"
icon="Download"
size="large"
>导出</el-button
>
</div> </div>
</el-form> </el-form>
</div> </div>

View File

@ -19,7 +19,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button> <el-button type="primary" icon="Search" v-hasPermi="['design:prelimScheme:query']" @click="handleQuery">搜索</el-button>
<el-button icon="Refresh" @click="resetQuery">重置</el-button> <el-button icon="Refresh" @click="resetQuery">重置</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
@ -55,19 +55,25 @@
<template #default="scope"> <template #default="scope">
<el-row :gutter="10" class="mb8"> <el-row :gutter="10" class="mb8">
<el-col :span="1.5" v-if="scope.row.status === 'draft' || scope.row.status === 'cancel' || scope.row.status === 'back'"> <el-col :span="1.5" v-if="scope.row.status === 'draft' || scope.row.status === 'cancel' || scope.row.status === 'back'">
<el-button v-hasPermi="['design:drawing:edit']" size="small" type="primary" icon="Edit" @click="handleUpdate(scope.row)" <el-button v-hasPermi="['design:prelimScheme:edit']" size="small" type="primary" icon="Edit" @click="handleUpdate(scope.row)"
>修改</el-button >修改</el-button
> >
</el-col> </el-col>
<el-col :span="1.5" v-if="scope.row.status === 'draft' || scope.row.status === 'cancel' || scope.row.status === 'back'"> <!-- <el-col :span="1.5" v-if="scope.row.status === 'draft' || scope.row.status === 'cancel' || scope.row.status === 'back'">
<el-button v-hasPermi="['design:drawing:remove']" size="small" type="primary" icon="Delete" @click="handleDelete(scope.row)" <el-button v-hasPermi="['design:prelimScheme:remove']" size="small" type="primary" icon="Delete" @click="handleDelete(scope.row)"
>删除</el-button >删除</el-button
> >
</el-col> </el-col> -->
</el-row> </el-row>
<el-row :gutter="10" class="mb8"> <el-row :gutter="10" class="mb8">
<el-col :span="1.5"> <el-col :span="1.5">
<el-button type="primary" size="small" icon="View" v-if="scope.row.status != 'draft'" @click="handleViewInfo(scope.row)" <el-button
type="primary"
v-hasPermi="['design:prelimScheme:query']"
size="small"
icon="View"
v-if="scope.row.status != 'draft'"
@click="handleViewInfo(scope.row)"
>查看</el-button >查看</el-button
> >
</el-col> </el-col>

View File

@ -22,19 +22,6 @@
<el-col :span="1.5"> <el-col :span="1.5">
<el-button type="primary" plain icon="Plus" @click="handleAdd" v-hasPermi="['design:subcontract:add']">新增</el-button> <el-button type="primary" plain icon="Plus" @click="handleAdd" v-hasPermi="['design:subcontract:add']">新增</el-button>
</el-col> </el-col>
<!-- <el-col :span="1.5">
<el-button type="success" plain icon="Edit" :disabled="single" @click="handleUpdate()" v-hasPermi="['design:subcontract:edit']"
>修改</el-button
>
</el-col>
<el-col :span="1.5">
<el-button type="danger" plain icon="Delete" :disabled="multiple" @click="handleDelete()" v-hasPermi="['design:subcontract:remove']"
>删除</el-button
>
</el-col>
<el-col :span="1.5">
<el-button type="warning" plain icon="Download" @click="handleExport" v-hasPermi="['design:subcontract:export']">导出</el-button>
</el-col> -->
<right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar> <right-toolbar v-model:showSearch="showSearch" @queryTable="getList"></right-toolbar>
</el-row> </el-row>
</template> </template>
@ -51,7 +38,6 @@
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum" v-model:limit="queryParams.pageSize" @pagination="getList" /> <pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum" v-model:limit="queryParams.pageSize" @pagination="getList" />
</el-card> </el-card>
<!-- 添加或修改设计分包对话框 --> <!-- 添加或修改设计分包对话框 -->

View File

@ -2,7 +2,7 @@
<div class="login"> <div class="login">
<el-form ref="loginRef" :model="loginForm" :rules="loginRules" class="login-form"> <el-form ref="loginRef" :model="loginForm" :rules="loginRules" class="login-form">
<div class="title-box"> <div class="title-box">
<h3 class="title">新能源项目管理平台</h3> <h3 class="title">煤科建管平台</h3>
<lang-select /> <lang-select />
</div> </div>
<el-form-item v-if="tenantEnabled" prop="tenantId"> <el-form-item v-if="tenantEnabled" prop="tenantId">

View File

@ -149,7 +149,6 @@
<script setup> <script setup>
import { ref, reactive, onMounted, computed, toRaw } from 'vue'; import { ref, reactive, onMounted, computed, toRaw } from 'vue';
import { ElMessage, ElMessageBox } from 'element-plus'; import { ElMessage, ElMessageBox } from 'element-plus';
import { WarningFilled } from '@element-plus/icons-vue';
import { useUserStoreHook } from '@/store/modules/user'; import { useUserStoreHook } from '@/store/modules/user';
import { useRouter } from 'vue-router'; import { useRouter } from 'vue-router';
const userStore = useUserStoreHook(); const userStore = useUserStoreHook();
@ -441,7 +440,7 @@ const handleDialogClose = () => {
// 跳转 // 跳转
const jumpRouter = (row) => { const jumpRouter = (row) => {
router.push({ router.push({
path: `/materials/materialSon`, path: `/materials/usageMaterials/materialIndexSon`,
query: { query: {
id: row.id, id: row.id,
type: 'update' type: 'update'

View File

@ -113,22 +113,26 @@
<!-- </template> --> <!-- </template> -->
</el-table-column> </el-table-column>
<!-- 备注信息列可展开 --> <!-- 备注信息列可展开 -->
<el-table-column label="备注信息" min-width="120"> <el-table-column label="备注信息" min-width="120">
<template #default="scope"> <template #default="scope">
<el-popover placement="top" width="300" trigger="click"> <el-popover placement="top" width="300" trigger="click">
<template #reference> <template #reference>
<el-button size="small" type="text">查看详情</el-button> <el-button size="small" type="text">查看详情</el-button>
</template> </template>
<div class="space-y-2 text-sm"> <div class="space-y-2 text-sm">
<p><span class="font-medium">采购备注</span>{{ scope.row.cgRemark || '-' }}</p> <p><span class="font-medium">采购备注</span>{{ scope.row.cgRemark || '-' }}
<p><span class="font-medium">到货备注</span>{{ scope.row.dhRemark || '-' }}</p> </p>
<p><span class="font-medium">供应商备注</span>{{ scope.row.gysRemark || '-' }}</p> <p><span class="font-medium">到货备注</span>{{ scope.row.dhRemark || '-' }}
<p><span class="font-medium">结算备注</span>{{ scope.row.jsRemark || '-' }}</p> </p>
</div> <p><span class="font-medium">供应商备注</span>{{ scope.row.gysRemark || '-'
</el-popover> }}</p>
</template> <p><span class="font-medium">结算备注</span>{{ scope.row.jsRemark || '-' }}
</el-table-column> </p>
</div>
</el-popover>
</template>
</el-table-column>
<!-- 操作列 --> <!-- 操作列 -->
<el-table-column label="操作" min-width="120" align="center" fixed="right"> <el-table-column label="操作" min-width="120" align="center" fixed="right">
@ -153,250 +157,217 @@
<div class="text-gray-500 text-sm"> <div class="text-gray-500 text-sm">
{{ total }} 条记录当前显示第 {{ (currentPage - 1) * pageSize + 1 }} {{ Math.min(currentPage * pageSize, total) }} {{ total }} 条记录当前显示第 {{ (currentPage - 1) * pageSize + 1 }} {{ Math.min(currentPage * pageSize, total) }}
</div> </div>
<el-pagination <el-dialog v-model="dialogVisible2" :title="dialogType2 === 'addSon' ? '新增采购信息' : '编辑采购信息'" :width="dialogWidth"
v-model:current-page="currentPage" :fullscreen="isFullscreen" :close-on-click-modal="false" :before-close="handleClose" destroy-on-close>
v-model:page-size="pageSize" <!-- 表单内容 -->
:page-sizes="[10, 20, 50, 100]" <el-form ref="formRef" :model="form" :rules="formRules" label-width="140px" class="space-y-4">
:total="total" <!-- 第一行 -->
layout="prev, pager, next, jumper, sizes" <el-row :gutter="20">
@size-change="handleSizeChange" <el-col :span="12">
@current-change="handleCurrentChange" <el-form-item label="批次" prop="batch">
small <el-input v-model="form.batch" placeholder="请输入批次信息"></el-input>
></el-pagination> </el-form-item>
</div> </el-col>
<el-col :span="12">
<el-form-item label="联系单下达时间" prop="issuanceTime">
<el-date-picker v-model="form.issuanceTime" type="datetime" placeholder="选择联系单下达时间"
value-format="YYYY-MM-DD HH:mm:ss"></el-date-picker>
</el-form-item>
</el-col>
</el-row>
<!-- 第二行 -->
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="要求到货数量" prop="requiredQuantity">
<el-input v-model="form.requiredQuantity" placeholder="请输入要求到货数量"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="要求到货时间" prop="requireDelivery">
<el-date-picker v-model="form.requireDelivery" type="datetime" placeholder="选择要求到货时间"
value-format="YYYY-MM-DD HH:mm:ss"></el-date-picker>
</el-form-item>
</el-col>
</el-row>
<!-- 第三行 -->
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="计划到货数量" prop="plannedQuantity">
<el-input v-model="form.plannedQuantity" placeholder="请输入计划到货数量"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="计划到货时间" prop="scheduledDelivery">
<el-date-picker v-model="form.scheduledDelivery" type="datetime" placeholder="选择计划到货时间"
value-format="YYYY-MM-DD HH:mm:ss"></el-date-picker>
</el-form-item>
</el-col>
</el-row>
<!-- 第四行 -->
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="实际到货验收数量" prop="actualAcceptance">
<el-input v-model="form.actualAcceptance" placeholder="请输入实际到货验收数量"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="实际到货时间" prop="actualDelivery">
<el-date-picker v-model="form.actualDelivery" type="datetime" placeholder="选择实际到货时间"
value-format="YYYY-MM-DD HH:mm:ss"></el-date-picker>
</el-form-item>
</el-col>
</el-row>
<!-- 第五行 -->
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="差异量" prop="differenceQuantity">
<el-input v-model="form.differenceQuantity" placeholder="请输入差异量"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="到货差异量" prop="dhDifferenceQuantity">
<el-input v-model="form.dhDifferenceQuantity" placeholder="请输入到货差异量"></el-input>
</el-form-item>
</el-col>
</el-row>
<!-- 第六行 -->
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="验收移交时间" prop="acceptanceCheck">
<el-date-picker v-model="form.acceptanceCheck" type="datetime" placeholder="选择验收移交时间"
value-format="YYYY-MM-DD HH:mm:ss"></el-date-picker>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="逾期状态" prop="expectedState">
<el-select v-model="form.expectedState" placeholder="请选择逾期状态">
<el-option label="未逾期" value="未逾期"></el-option>
<el-option label="已逾期" value="已逾期"></el-option>
<el-option label="即将逾期" value="即将逾期"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<!-- 第七行 - 金额信息 -->
<el-row :gutter="20">
<el-col :span="6">
<el-form-item label="货物金额" prop="cargoAmount">
<el-input v-model="form.cargoAmount" placeholder="0.00" prefix="¥"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="预付款" prop="advance">
<el-input v-model="form.advance" placeholder="0.00" prefix="¥"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="投料款" prop="feed">
<el-input v-model="form.feed" placeholder="0.00" prefix="¥"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="到货验收款" prop="acceptancePayment">
<el-input v-model="form.acceptancePayment" placeholder="0.00" prefix="¥"></el-input>
</el-form-item>
</el-col>
</el-row>
<!-- 第八行 - 金额信息 -->
<el-row :gutter="20">
<el-col :span="8">
<el-form-item label="调试款" prop="debugging">
<el-input v-model="form.debugging" placeholder="0.00" prefix="¥"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="质保金" prop="qualityGuarantee">
<el-input v-model="form.qualityGuarantee" placeholder="0.00" prefix="¥"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="结算金额" prop="settlementAmount">
<el-input v-model="form.settlementAmount" placeholder="0.00" prefix="¥"></el-input>
</el-form-item>
</el-col>
</el-row>
<!-- 第九行 -->
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="交接方式" prop="associate">
<el-input v-model="form.associate" placeholder="请输入交接方式"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="转换为合同" prop="transition">
<el-select v-model="form.transition" placeholder="请选择是否转换为合同">
<el-option label="是" value="是"></el-option>
<el-option label="否" value="否"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<!-- 第十行 -->
<el-row :gutter="20">
<el-col :span="24">
<el-form-item label="到货要求" prop="deliveryRequirements">
<el-input v-model="form.deliveryRequirements" placeholder="请输入到货要求" type="textarea"
rows="3"></el-input>
</el-form-item>
</el-col>
</el-row>
<!-- 第十一行 - 备注信息 -->
<el-row :gutter="20">
<el-col :span="8">
<el-form-item label="采购备注" prop="cgRemark">
<el-input v-model="form.cgRemark" placeholder="请输入采购备注" type="textarea" rows="4"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="到货备注" prop="dhRemark">
<el-input v-model="form.dhRemark" placeholder="请输入到货备注" type="textarea" rows="4"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="供应商备注" prop="gysRemark">
<el-input v-model="form.gysRemark" placeholder="请输入供应商备注" type="textarea"
rows="4"></el-input>
</el-form-item>
</el-col>
</el-row>
<!-- 第十二行 -->
<el-row :gutter="20">
<el-col :span="24">
<el-form-item label="结算备注" prop="jsRemark">
<el-input v-model="form.jsRemark" placeholder="请输入结算备注" type="textarea" rows="3"></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<!-- 底部按钮 -->
<template #footer>
<div class="flex justify-end gap-3">
<el-button @click="handleCancel" class="transition-all duration-200">
取消
</el-button>
<el-button type="primary" @click="handleSubmit" :loading="submitLoading"
class="transition-all duration-200">
{{ dialogType2 === 'addSon' ? '新增' : '保存' }}
</el-button>
</div>
</template>
</el-dialog>
</div> </div>
</div>
<el-dialog
v-model="dialogVisible2"
:title="dialogType2 === 'addSon' ? '新增采购信息' : '编辑采购信息'"
:width="dialogWidth"
:fullscreen="isFullscreen"
:close-on-click-modal="false"
:before-close="handleClose"
destroy-on-close
>
<!-- 表单内容 -->
<el-form ref="formRef" :model="form" :rules="formRules" label-width="140px" class="space-y-4">
<!-- 第一行 -->
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="批次" prop="batch">
<el-input v-model="form.batch" placeholder="请输入批次信息"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="联系单下达时间" prop="issuanceTime">
<el-date-picker
v-model="form.issuanceTime"
type="datetime"
placeholder="选择联系单下达时间"
value-format="YYYY-MM-DD HH:mm:ss"
></el-date-picker>
</el-form-item>
</el-col>
</el-row>
<!-- 第二行 -->
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="要求到货数量" prop="requiredQuantity">
<el-input v-model="form.requiredQuantity" placeholder="请输入要求到货数量"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="要求到货时间" prop="requireDelivery">
<el-date-picker
v-model="form.requireDelivery"
type="datetime"
placeholder="选择要求到货时间"
value-format="YYYY-MM-DD HH:mm:ss"
></el-date-picker>
</el-form-item>
</el-col>
</el-row>
<!-- 第三行 -->
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="计划到货数量" prop="plannedQuantity">
<el-input v-model="form.plannedQuantity" placeholder="请输入计划到货数量"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="计划到货时间" prop="scheduledDelivery">
<el-date-picker
v-model="form.scheduledDelivery"
type="datetime"
placeholder="选择计划到货时间"
value-format="YYYY-MM-DD HH:mm:ss"
></el-date-picker>
</el-form-item>
</el-col>
</el-row>
<!-- 第四行 -->
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="实际到货验收数量" prop="actualAcceptance">
<el-input v-model="form.actualAcceptance" placeholder="请输入实际到货验收数量"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="实际到货时间" prop="actualDelivery">
<el-date-picker
v-model="form.actualDelivery"
type="datetime"
placeholder="选择实际到货时间"
value-format="YYYY-MM-DD HH:mm:ss"
></el-date-picker>
</el-form-item>
</el-col>
</el-row>
<!-- 第五行 -->
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="差异量" prop="differenceQuantity">
<el-input v-model="form.differenceQuantity" placeholder="请输入差异量"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="到货差异量" prop="dhDifferenceQuantity">
<el-input v-model="form.dhDifferenceQuantity" placeholder="请输入到货差异量"></el-input>
</el-form-item>
</el-col>
</el-row>
<!-- 第六行 -->
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="验收移交时间" prop="acceptanceCheck">
<el-date-picker
v-model="form.acceptanceCheck"
type="datetime"
placeholder="选择验收移交时间"
value-format="YYYY-MM-DD HH:mm:ss"
></el-date-picker>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="逾期状态" prop="expectedState">
<el-select v-model="form.expectedState" placeholder="请选择逾期状态">
<el-option label="未逾期" value="未逾期"></el-option>
<el-option label="已逾期" value="已逾期"></el-option>
<el-option label="即将逾期" value="即将逾期"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<!-- 第七行 - 金额信息 -->
<el-row :gutter="20">
<el-col :span="6">
<el-form-item label="货物金额" prop="cargoAmount">
<el-input v-model="form.cargoAmount" placeholder="0.00" prefix="¥"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="预付款" prop="advance">
<el-input v-model="form.advance" placeholder="0.00" prefix="¥"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="投料款" prop="feed">
<el-input v-model="form.feed" placeholder="0.00" prefix="¥"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="到货验收款" prop="acceptancePayment">
<el-input v-model="form.acceptancePayment" placeholder="0.00" prefix="¥"></el-input>
</el-form-item>
</el-col>
</el-row>
<!-- 第八行 - 金额信息 -->
<el-row :gutter="20">
<el-col :span="8">
<el-form-item label="调试款" prop="debugging">
<el-input v-model="form.debugging" placeholder="0.00" prefix="¥"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="质保金" prop="qualityGuarantee">
<el-input v-model="form.qualityGuarantee" placeholder="0.00" prefix="¥"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="结算金额" prop="settlementAmount">
<el-input v-model="form.settlementAmount" placeholder="0.00" prefix="¥"></el-input>
</el-form-item>
</el-col>
</el-row>
<!-- 第九行 -->
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="交接方式" prop="associate">
<el-input v-model="form.associate" placeholder="请输入交接方式"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="转换为合同" prop="transition">
<el-select v-model="form.transition" placeholder="请选择是否转换为合同">
<el-option label="是" value="是"></el-option>
<el-option label="否" value="否"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<!-- 第十行 -->
<el-row :gutter="20">
<el-col :span="24">
<el-form-item label="到货要求" prop="deliveryRequirements">
<el-input v-model="form.deliveryRequirements" placeholder="请输入到货要求" type="textarea" rows="3"></el-input>
</el-form-item>
</el-col>
</el-row>
<!-- 第十一行 - 备注信息 -->
<el-row :gutter="20">
<el-col :span="8">
<el-form-item label="采购备注" prop="cgRemark">
<el-input v-model="form.cgRemark" placeholder="请输入采购备注" type="textarea" rows="4"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="到货备注" prop="dhRemark">
<el-input v-model="form.dhRemark" placeholder="请输入到货备注" type="textarea" rows="4"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="供应商备注" prop="gysRemark">
<el-input v-model="form.gysRemark" placeholder="请输入供应商备注" type="textarea" rows="4"></el-input>
</el-form-item>
</el-col>
</el-row>
<!-- 第十二行 -->
<el-row :gutter="20">
<el-col :span="24">
<el-form-item label="结算备注" prop="jsRemark">
<el-input v-model="form.jsRemark" placeholder="请输入结算备注" type="textarea" rows="3"></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<!-- 底部按钮 -->
<template #footer>
<div class="flex justify-end gap-3">
<el-button @click="handleCancel" class="transition-all duration-200"> 取消 </el-button>
<el-button type="primary" @click="handleSubmit" :loading="submitLoading" class="transition-all duration-200">
{{ dialogType2 === 'addSon' ? '新增' : '保存' }}
</el-button>
</div>
</template>
</el-dialog>
</template> </template>
<script setup> <script setup>
import { ref, reactive, onMounted, toRaw, getCurrentInstance } from 'vue'; import { ref, reactive, onMounted, toRaw, getCurrentInstance } from 'vue';
@ -564,6 +535,7 @@ const handleSubmit = async () => {
} }
}; };
const materialsUsageDetails1 = () => { const materialsUsageDetails1 = () => {
<<<<<<< HEAD
loading.value = true; loading.value = true;
materialsUsageDetails({ physicalsupplyId: routeParams.value.id }) materialsUsageDetails({ physicalsupplyId: routeParams.value.id })
.then((res) => { .then((res) => {
@ -576,6 +548,17 @@ const materialsUsageDetails1 = () => {
loading.value = false; loading.value = false;
}); });
}; };
=======
loading.value = true;
materialsUsageDetails({ physicalsupplyId: routeParams.value.id }).then(res => {
tableData.value = res.rows
}).catch(() => {
loading.value = false;
}).finally(() => {
loading.value = false;
})
}
>>>>>>> 8f9972343a005ce4424fbf2e3b2388060c854b5f
// 格式化日期 // 格式化日期
const formatDate = (dateString) => { const formatDate = (dateString) => {
if (!dateString) return '-'; if (!dateString) return '-';

View File

@ -61,87 +61,89 @@
@current-change="handleCurrentChange"></el-pagination> @current-change="handleCurrentChange"></el-pagination>
</div> </div>
</div> </div>
<!-- 新增/编辑对话框 -->
<el-dialog v-model="dialogVisible" :title="dialogType === 'add' ? '新增记录' : '编辑记录'" :width="dialogWidth"
:fullscreen="isFullscreen" :before-close="handleDialogClose">
<el-form ref="formRef" :model="formData" :rules="formRules" label-width="120px" class="space-y-4">
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="材料名称" prop="name">
<el-input v-model="formData.name" placeholder="请输入材料名称"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="规格" prop="specification">
<el-input v-model="formData.specification" placeholder="请输入规格"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="供应商" prop="supplier">
<el-input v-model="formData.supplier" placeholder="请输入供应商"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="运算周期(天)" prop="executionCycle">
<el-input v-model.number="formData.executionCycle" placeholder="请输入运算周期" type="number"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="安装量" prop="installationQuantity">
<el-input v-model="formData.installationQuantity" placeholder="请输入安装量"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="安装比例" prop="installationRatio">
<el-input v-model="formData.installationRatio" placeholder="请输入安装比例" suffix="%"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="合同签订时间" prop="contractSigning">
<el-date-picker v-model="formData.contractSigning" type="datetime" placeholder="选择合同签订时间"
value-format="YYYY-MM-DD HH:mm:ss"></el-date-picker>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="生产周期(天)" prop="productionPhase">
<el-input v-model.number="formData.productionPhase" placeholder="请输入生产周期" type="number"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="24">
<el-form-item label="供货要求" prop="supplyRequirements">
<el-input v-model="formData.supplyRequirements" placeholder="请输入供货要求" type="textarea"
:rows="3"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="24">
<el-form-item label="备注" prop="remark">
<el-input v-model="formData.remark" placeholder="请输入备注信息" type="textarea" :rows="3"></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<template #footer>
<div class="flex justify-end gap-2">
<el-button @click="dialogVisible = false">取消</el-button>
<el-button type="primary" @click="handleSave" :loading="saveLoading"> 保存 </el-button>
</div>
</template>
</el-dialog>
</div> </div>
<!-- 新增/编辑对话框 -->
<el-dialog v-model="dialogVisible" :title="dialogType === 'add' ? '新增记录' : '编辑记录'" :width="dialogWidth"
:fullscreen="isFullscreen" :before-close="handleDialogClose">
<el-form ref="formRef" :model="formData" :rules="formRules" label-width="120px" class="space-y-4">
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="材料名称" prop="name">
<el-input v-model="formData.name" placeholder="请输入材料名称"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="规格" prop="specification">
<el-input v-model="formData.specification" placeholder="请输入规格"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="供应商" prop="supplier">
<el-input v-model="formData.supplier" placeholder="请输入供应商"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="运算周期(天)" prop="executionCycle">
<el-input v-model.number="formData.executionCycle" placeholder="请输入运算周期" type="number"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="安装量" prop="installationQuantity">
<el-input v-model="formData.installationQuantity" placeholder="请输入安装量"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="安装比例" prop="installationRatio">
<el-input v-model="formData.installationRatio" placeholder="请输入安装比例" suffix="%"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="合同签订时间" prop="contractSigning">
<el-date-picker v-model="formData.contractSigning" type="datetime" placeholder="选择合同签订时间"
value-format="YYYY-MM-DD HH:mm:ss"></el-date-picker>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="生产周期(天)" prop="productionPhase">
<el-input v-model.number="formData.productionPhase" placeholder="请输入生产周期" type="number"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="24">
<el-form-item label="供货要求" prop="supplyRequirements">
<el-input v-model="formData.supplyRequirements" placeholder="请输入供货要求" type="textarea" :rows="3"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="24">
<el-form-item label="备注" prop="remark">
<el-input v-model="formData.remark" placeholder="请输入备注信息" type="textarea" :rows="3"></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<template #footer>
<div class="flex justify-end gap-2">
<el-button @click="dialogVisible = false">取消</el-button>
<el-button type="primary" @click="handleSave" :loading="saveLoading"> 保存 </el-button>
</div>
</template>
</el-dialog>
</template> </template>
<script setup> <script setup>
@ -159,6 +161,7 @@ const total = ref(0);
const currentPage = ref(1); const currentPage = ref(1);
const pageSize = ref(10); const pageSize = ref(10);
const loading = ref(false); const loading = ref(false);
const saveLoading = ref(false);
// 搜索表单 // 搜索表单
const searchForm = reactive({ const searchForm = reactive({
@ -436,7 +439,7 @@ const handleDialogClose = () => {
// 跳转 // 跳转
const jumpRouter = (row) => { const jumpRouter = (row) => {
router.push({ router.push({
path: `/materials/purchaseSon`, path: `/materials/usageMaterials/purchaseIndexSon`,
query: { query: {
id: row.id, id: row.id,
type: 'update' type: 'update'
@ -449,5 +452,4 @@ onMounted(() => {
}); });
</script> </script>
<style scoped> <style scoped></style>
</style>

View File

@ -129,7 +129,7 @@
<p><span class="font-medium">到货备注</span>{{ scope.row.dhRemark || '-' }} <p><span class="font-medium">到货备注</span>{{ scope.row.dhRemark || '-' }}
</p> </p>
<p><span class="font-medium">供应商备注</span>{{ scope.row.gysRemark || '-' <p><span class="font-medium">供应商备注</span>{{ scope.row.gysRemark || '-'
}}</p> }}</p>
<p><span class="font-medium">结算备注</span>{{ scope.row.jsRemark || '-' }} <p><span class="font-medium">结算备注</span>{{ scope.row.jsRemark || '-' }}
</p> </p>
</div> </div>
@ -159,233 +159,235 @@
@size-change="handleSizeChange" @current-change="handleCurrentChange" small></el-pagination> @size-change="handleSizeChange" @current-change="handleCurrentChange" small></el-pagination>
</div> </div>
</div> </div>
<!-- 删除确认对话框 -->
<el-dialog v-model="deleteDialogVisible2" title="确认删除" width="300px" :show-close="false">
<div class="text-center py-4">
<el-icon class="text-orange-500 text-4xl mb-3">
<WarningFilled />
</el-icon>
<p>确定要删除这条记录吗</p>
<p class="text-gray-500 text-sm mt-2">此操作不可撤销请谨慎操作</p>
</div>
<template #footer>
<div class="flex justify-center gap-2">
<el-button @click="deleteDialogVisible2 = false">取消</el-button>
<el-button type="danger" @click="confirmDelete2" :loading="deleteLoading">
确认删除
</el-button>
</div>
</template>
</el-dialog>
<el-dialog v-model="dialogVisible2" :title="dialogType2 === 'addSon' ? '新增采购信息' : '编辑采购信息'" :width="dialogWidth"
:fullscreen="isFullscreen" :close-on-click-modal="false" :before-close="handleClose" destroy-on-close>
<!-- 表单内容 -->
<el-form ref="formRef" :model="form" :rules="formRules" label-width="140px" class="space-y-4">
<!-- 第一行 -->
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="批次" prop="batch">
<el-input v-model="form.batch" placeholder="请输入批次信息"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="联系单下达时间" prop="issuanceTime">
<el-date-picker v-model="form.issuanceTime" type="datetime" placeholder="选择联系单下达时间"
value-format="YYYY-MM-DD HH:mm:ss"></el-date-picker>
</el-form-item>
</el-col>
</el-row>
<!-- 第二行 -->
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="要求到货数量" prop="requiredQuantity">
<el-input v-model="form.requiredQuantity" placeholder="请输入要求到货数量"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="要求到货时间" prop="requireDelivery">
<el-date-picker v-model="form.requireDelivery" type="datetime" placeholder="选择要求到货时间"
value-format="YYYY-MM-DD HH:mm:ss"></el-date-picker>
</el-form-item>
</el-col>
</el-row>
<!-- 第三行 -->
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="计划到货数量" prop="plannedQuantity">
<el-input v-model="form.plannedQuantity" placeholder="请输入计划到货数量"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="计划到货时间" prop="scheduledDelivery">
<el-date-picker v-model="form.scheduledDelivery" type="datetime" placeholder="选择计划到货时间"
value-format="YYYY-MM-DD HH:mm:ss"></el-date-picker>
</el-form-item>
</el-col>
</el-row>
<!-- 第四行 -->
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="实际到货验收数量" prop="actualAcceptance">
<el-input v-model="form.actualAcceptance" placeholder="请输入实际到货验收数量"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="实际到货时间" prop="actualDelivery">
<el-date-picker v-model="form.actualDelivery" type="datetime" placeholder="选择实际到货时间"
value-format="YYYY-MM-DD HH:mm:ss"></el-date-picker>
</el-form-item>
</el-col>
</el-row>
<!-- 第五行 -->
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="差异量" prop="differenceQuantity">
<el-input v-model="form.differenceQuantity" placeholder="请输入差异量"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="到货差异量" prop="dhDifferenceQuantity">
<el-input v-model="form.dhDifferenceQuantity" placeholder="请输入到货差异量"></el-input>
</el-form-item>
</el-col>
</el-row>
<!-- 第六行 -->
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="验收移交时间" prop="acceptanceCheck">
<el-date-picker v-model="form.acceptanceCheck" type="datetime" placeholder="选择验收移交时间"
value-format="YYYY-MM-DD HH:mm:ss"></el-date-picker>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="逾期状态" prop="expectedState">
<el-select v-model="form.expectedState" placeholder="请选择逾期状态">
<el-option label="未逾期" value="未逾期"></el-option>
<el-option label="已逾期" value="已逾期"></el-option>
<el-option label="即将逾期" value="即将逾期"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<!-- 第七行 - 金额信息 -->
<el-row :gutter="20">
<el-col :span="6">
<el-form-item label="货物金额" prop="cargoAmount">
<el-input v-model="form.cargoAmount" placeholder="0.00" prefix="¥"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="预付款" prop="advance">
<el-input v-model="form.advance" placeholder="0.00" prefix="¥"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="投料款" prop="feed">
<el-input v-model="form.feed" placeholder="0.00" prefix="¥"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="到货验收款" prop="acceptancePayment">
<el-input v-model="form.acceptancePayment" placeholder="0.00" prefix="¥"></el-input>
</el-form-item>
</el-col>
</el-row>
<!-- 第八行 - 金额信息 -->
<el-row :gutter="20">
<el-col :span="8">
<el-form-item label="调试款" prop="debugging">
<el-input v-model="form.debugging" placeholder="0.00" prefix="¥"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="质保金" prop="qualityGuarantee">
<el-input v-model="form.qualityGuarantee" placeholder="0.00" prefix="¥"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="结算金额" prop="settlementAmount">
<el-input v-model="form.settlementAmount" placeholder="0.00" prefix="¥"></el-input>
</el-form-item>
</el-col>
</el-row>
<!-- 第九行 -->
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="交接方式" prop="associate">
<el-input v-model="form.associate" placeholder="请输入交接方式"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="转换为合同" prop="transition">
<el-select v-model="form.transition" placeholder="请选择是否转换为合同">
<el-option label="是" value="是"></el-option>
<el-option label="否" value="否"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<!-- 第十行 -->
<el-row :gutter="20">
<el-col :span="24">
<el-form-item label="到货要求" prop="deliveryRequirements">
<el-input v-model="form.deliveryRequirements" placeholder="请输入到货要求" type="textarea"
rows="3"></el-input>
</el-form-item>
</el-col>
</el-row>
<!-- 第十一行 - 备注信息 -->
<el-row :gutter="20">
<el-col :span="8">
<el-form-item label="采购备注" prop="cgRemark">
<el-input v-model="form.cgRemark" placeholder="请输入采购备注" type="textarea" rows="4"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="到货备注" prop="dhRemark">
<el-input v-model="form.dhRemark" placeholder="请输入到货备注" type="textarea" rows="4"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="供应商备注" prop="gysRemark">
<el-input v-model="form.gysRemark" placeholder="请输入供应商备注" type="textarea"
rows="4"></el-input>
</el-form-item>
</el-col>
</el-row>
<!-- 第十二行 -->
<el-row :gutter="20">
<el-col :span="24">
<el-form-item label="结算备注" prop="jsRemark">
<el-input v-model="form.jsRemark" placeholder="请输入结算备注" type="textarea" rows="3"></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<!-- 底部按钮 -->
<template #footer>
<div class="flex justify-end gap-3">
<el-button @click="handleCancel" class="transition-all duration-200">
取消
</el-button>
<el-button type="primary" @click="handleSubmit" :loading="submitLoading"
class="transition-all duration-200">
{{ dialogType2 === 'addSon' ? '新增' : '保存' }}
</el-button>
</div>
</template>
</el-dialog>
</div> </div>
<!-- 删除确认对话框 -->
<el-dialog v-model="deleteDialogVisible2" title="确认删除" width="300px" :show-close="false">
<div class="text-center py-4">
<el-icon class="text-orange-500 text-4xl mb-3">
<WarningFilled />
</el-icon>
<p>确定要删除这条记录吗</p>
<p class="text-gray-500 text-sm mt-2">此操作不可撤销请谨慎操作</p>
</div>
<template #footer>
<div class="flex justify-center gap-2">
<el-button @click="deleteDialogVisible2 = false">取消</el-button>
<el-button type="danger" @click="confirmDelete2" :loading="deleteLoading">
确认删除
</el-button>
</div>
</template>
</el-dialog>
<el-dialog v-model="dialogVisible2" :title="dialogType2 === 'addSon' ? '新增采购信息' : '编辑采购信息'" :width="dialogWidth"
:fullscreen="isFullscreen" :close-on-click-modal="false" :before-close="handleClose" destroy-on-close>
<!-- 表单内容 -->
<el-form ref="formRef" :model="form" :rules="formRules" label-width="140px" class="space-y-4">
<!-- 第一行 -->
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="批次" prop="batch">
<el-input v-model="form.batch" placeholder="请输入批次信息"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="联系单下达时间" prop="issuanceTime">
<el-date-picker v-model="form.issuanceTime" type="datetime" placeholder="选择联系单下达时间"
value-format="YYYY-MM-DD HH:mm:ss"></el-date-picker>
</el-form-item>
</el-col>
</el-row>
<!-- 第二行 -->
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="要求到货数量" prop="requiredQuantity">
<el-input v-model="form.requiredQuantity" placeholder="请输入要求到货数量"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="要求到货时间" prop="requireDelivery">
<el-date-picker v-model="form.requireDelivery" type="datetime" placeholder="选择要求到货时间"
value-format="YYYY-MM-DD HH:mm:ss"></el-date-picker>
</el-form-item>
</el-col>
</el-row>
<!-- 第三行 -->
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="计划到货数量" prop="plannedQuantity">
<el-input v-model="form.plannedQuantity" placeholder="请输入计划到货数量"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="计划到货时间" prop="scheduledDelivery">
<el-date-picker v-model="form.scheduledDelivery" type="datetime" placeholder="选择计划到货时间"
value-format="YYYY-MM-DD HH:mm:ss"></el-date-picker>
</el-form-item>
</el-col>
</el-row>
<!-- 第四行 -->
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="实际到货验收数量" prop="actualAcceptance">
<el-input v-model="form.actualAcceptance" placeholder="请输入实际到货验收数量"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="实际到货时间" prop="actualDelivery">
<el-date-picker v-model="form.actualDelivery" type="datetime" placeholder="选择实际到货时间"
value-format="YYYY-MM-DD HH:mm:ss"></el-date-picker>
</el-form-item>
</el-col>
</el-row>
<!-- 第五行 -->
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="差异量" prop="differenceQuantity">
<el-input v-model="form.differenceQuantity" placeholder="请输入差异量"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="到货差异量" prop="dhDifferenceQuantity">
<el-input v-model="form.dhDifferenceQuantity" placeholder="请输入到货差异量"></el-input>
</el-form-item>
</el-col>
</el-row>
<!-- 第六行 -->
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="验收移交时间" prop="acceptanceCheck">
<el-date-picker v-model="form.acceptanceCheck" type="datetime" placeholder="选择验收移交时间"
value-format="YYYY-MM-DD HH:mm:ss"></el-date-picker>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="逾期状态" prop="expectedState">
<el-select v-model="form.expectedState" placeholder="请选择逾期状态">
<el-option label="未逾期" value="未逾期"></el-option>
<el-option label="已逾期" value="已逾期"></el-option>
<el-option label="即将逾期" value="即将逾期"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<!-- 第七行 - 金额信息 -->
<el-row :gutter="20">
<el-col :span="6">
<el-form-item label="货物金额" prop="cargoAmount">
<el-input v-model="form.cargoAmount" placeholder="0.00" prefix="¥"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="预付款" prop="advance">
<el-input v-model="form.advance" placeholder="0.00" prefix="¥"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="投料款" prop="feed">
<el-input v-model="form.feed" placeholder="0.00" prefix="¥"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="到货验收款" prop="acceptancePayment">
<el-input v-model="form.acceptancePayment" placeholder="0.00" prefix="¥"></el-input>
</el-form-item>
</el-col>
</el-row>
<!-- 第八行 - 金额信息 -->
<el-row :gutter="20">
<el-col :span="8">
<el-form-item label="调试款" prop="debugging">
<el-input v-model="form.debugging" placeholder="0.00" prefix="¥"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="质保金" prop="qualityGuarantee">
<el-input v-model="form.qualityGuarantee" placeholder="0.00" prefix="¥"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="结算金额" prop="settlementAmount">
<el-input v-model="form.settlementAmount" placeholder="0.00" prefix="¥"></el-input>
</el-form-item>
</el-col>
</el-row>
<!-- 第九行 -->
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="交接方式" prop="associate">
<el-input v-model="form.associate" placeholder="请输入交接方式"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="转换为合同" prop="transition">
<el-select v-model="form.transition" placeholder="请选择是否转换为合同">
<el-option label="是" value="是"></el-option>
<el-option label="否" value="否"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<!-- 第十行 -->
<el-row :gutter="20">
<el-col :span="24">
<el-form-item label="到货要求" prop="deliveryRequirements">
<el-input v-model="form.deliveryRequirements" placeholder="请输入到货要求" type="textarea"
rows="3"></el-input>
</el-form-item>
</el-col>
</el-row>
<!-- 第十一行 - 备注信息 -->
<el-row :gutter="20">
<el-col :span="8">
<el-form-item label="采购备注" prop="cgRemark">
<el-input v-model="form.cgRemark" placeholder="请输入采购备注" type="textarea" rows="4"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="到货备注" prop="dhRemark">
<el-input v-model="form.dhRemark" placeholder="请输入到货备注" type="textarea" rows="4"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="供应商备注" prop="gysRemark">
<el-input v-model="form.gysRemark" placeholder="请输入供应商备注" type="textarea" rows="4"></el-input>
</el-form-item>
</el-col>
</el-row>
<!-- 第十二行 -->
<el-row :gutter="20">
<el-col :span="24">
<el-form-item label="结算备注" prop="jsRemark">
<el-input v-model="form.jsRemark" placeholder="请输入结算备注" type="textarea" rows="3"></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<!-- 底部按钮 -->
<template #footer>
<div class="flex justify-end gap-3">
<el-button @click="handleCancel" class="transition-all duration-200">
取消
</el-button>
<el-button type="primary" @click="handleSubmit" :loading="submitLoading"
class="transition-all duration-200">
{{ dialogType2 === 'addSon' ? '新增' : '保存' }}
</el-button>
</div>
</template>
</el-dialog>
</template> </template>
<script setup> <script setup>
import { ref, reactive, onMounted, toRaw, getCurrentInstance } from 'vue'; import { ref, reactive, onMounted, toRaw, getCurrentInstance } from 'vue';
@ -586,5 +588,4 @@ onMounted(() => {
console.log('routeParams.value', routeParams.value); console.log('routeParams.value', routeParams.value);
materialsUsageDetails1(); materialsUsageDetails1();
}) })
</script> </script>

View File

@ -2,7 +2,7 @@
<div class="register"> <div class="register">
<el-form ref="registerRef" :model="registerForm" :rules="registerRules" class="register-form"> <el-form ref="registerRef" :model="registerForm" :rules="registerRules" class="register-form">
<div class="title-box"> <div class="title-box">
<h3 class="title">新能源项目管理平台</h3> <h3 class="title">煤科建管平台</h3>
<lang-select /> <lang-select />
</div> </div>
<el-form-item v-if="tenantEnabled" prop="tenantId"> <el-form-item v-if="tenantEnabled" prop="tenantId">