someone-oa/pc/project-bidding.html
2025-12-11 19:04:46 +08:00

155 lines
6.3 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>投标管理 - OA系统</title>
<link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css">
<!-- 统一布局样式 -->
<link rel="stylesheet" href="unified-layout.css">
<style>
* { margin: 0; padding: 0; box-sizing: border-box; }
body {
font-family: "Helvetica Neue", Helvetica, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", Arial, sans-serif;
background: #f0f2f5;
overflow: hidden;
}
.layout-container {
height: 100vh;
display: flex;
flex-direction: column;
}
.main-container {
flex: 1;
display: flex;
overflow: hidden;
}
.app-main {
flex: 1;
overflow: hidden;
display: flex;
flex-direction: column;
background: #f0f2f5;
}
.sidebar {
width: 210px;
background: #fff;
border-right: 1px solid #e6e6e6;
overflow-y: auto;
}
.el-menu {
border-right: none;
}
.menu-item { padding: 12px 24px; cursor: pointer; }
.menu-item.active {
background: #409EFF;
color: #fff;
}
.content {
flex: 1;
padding: 20px;
overflow-y: auto;
background: #fff;
margin: 10px;
border-radius: 4px;
}
.page-header { margin-bottom: 24px; padding-bottom: 16px; border-bottom: 1px solid #f0f0f0; }
.page-title { font-size: 20px; font-weight: 500; }
.search-form { background: #fafafa; padding: 16px; border-radius: 4px; margin-bottom: 16px; }
.form-row { display: flex; gap: 16px; margin-bottom: 12px; }
.form-item { flex: 1; }
.form-input, .form-select { width: 100%; padding: 6px 12px; border: 1px solid #d9d9d9; border-radius: 4px; }
.btn { padding: 6px 16px; border: none; border-radius: 4px; cursor: pointer; }
.btn-primary { background: #409EFF; color: white; }
.btn-default { background: white; color: #333; border: 1px solid #d9d9d9; }
table { width: 100%; border-collapse: collapse; }
th, td { padding: 12px; text-align: left; border-bottom: 1px solid #f0f0f0; }
th { background: #fafafa; font-weight: 500; }
.status-badge { padding: 2px 8px; border-radius: 4px; font-size: 12px; }
.status-bidding { background: #fff7e6; color: #d46b08; }
.action-link { color: #409EFF; cursor: pointer; margin-right: 12px; }
</style>
<!-- Vue.js -->
<script src="https://unpkg.com/vue@2/dist/vue.js"></script>
<!-- Element UI JS -->
<script src="https://unpkg.com/element-ui/lib/index.js"></script>
<script src="common.js"></script>
</head>
<body>
<div id="app">
<div class="layout-container">
<div class="main-container">
<div class="sidebar">
<div class="menu-item" onclick="window.location.href='project-initiation.html'">立项申请</div>
<div class="menu-item" onclick="window.location.href='project-list.html'">项目查询</div>
<div class="menu-item" onclick="window.location.href='project-approval.html'">审核管理</div>
<div class="menu-item active">投标管理</div>
<div class="menu-item" onclick="window.location.href='project-contract.html'">合同管理</div>
</div>
<div class="content">
<div class="page-header">
<div class="page-title">投标管理</div>
</div>
<div class="search-form">
<div class="form-row">
<div class="form-item">
<input type="text" class="form-input" placeholder="项目编号/名称">
</div>
<div class="form-item" style="display: flex; gap: 8px;">
<button class="btn btn-primary">查询</button>
<button class="btn btn-default">重置</button>
</div>
</div>
</div>
<table>
<thead>
<tr>
<th>项目编号</th>
<th>项目名称</th>
<th>客户名称</th>
<th>服务内容</th>
<th>预计金额</th>
<th>状态</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<tr>
<td>25-2</td>
<td>YY工程项目</td>
<td>YY公司</td>
<td>跟踪审计</td>
<td>¥800,000</td>
<td><span class="status-badge status-bidding">投标中</span></td>
<td>
<span class="action-link" onclick="window.location.href='bidding-detail.html?id=25-2'">查看详情</span>
<span class="action-link" onclick="updateBidding('25-2')">更新状态</span>
<span class="action-link" onclick="uploadFile('25-2')">上传附件</span>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<script src="unified-layout.js"></script>
<script>
initUnifiedLayout('project');
function updateBidding(id) {
CommonUtils.createModal('确认更新', '确认更新项目状态为"投标"', () => {
CommonUtils.showMessage('状态已更新');
return true;
});
}
function uploadFile(id) {
CommonUtils.uploadFile('*', (file) => {
CommonUtils.showMessage('文件上传成功:' + file.name);
}, 50);
}
</script>
</div>
</body>
</html>