Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
W
web-purchase
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
张冬
web-purchase
Commits
d499e43a
Commit
d499e43a
authored
Sep 25, 2020
by
张冬
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
联调
parent
8a4c55f9
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
408 additions
and
650 deletions
+408
-650
list.js
src/api/common/list.js
+10
-0
bid.js
src/api/supply/bid.js
+23
-10
common.css
src/common/common.css
+2
-1
Sidebar.vue
src/components/common/Sidebar.vue
+0
-0
see.vue
src/pages/purchaser/bid/bidStage/changeList/see.vue
+3
-2
failList.vue
src/pages/purchaser/bid/bidStage/failList/failList.vue
+16
-23
changeList.vue
...supply/bid/joinProject/bidStage/changeList/changeList.vue
+77
-100
see.vue
src/pages/supply/bid/joinProject/bidStage/changeList/see.vue
+13
-102
clearManagement.vue
.../joinProject/bidStage/clearManagement/clearManagement.vue
+38
-21
confirm.vue
...pply/bid/joinProject/bidStage/clearManagement/confirm.vue
+22
-6
see.vue
...s/supply/bid/joinProject/bidStage/clearManagement/see.vue
+84
-26
failList.vue
...ges/supply/bid/joinProject/bidStage/failList/failList.vue
+12
-155
see.vue
src/pages/supply/bid/joinProject/bidStage/failList/see.vue
+100
-200
workbench.vue
src/pages/supply/bid/joinProject/workbench.vue
+4
-0
request.js
src/utils/request.js
+4
-4
No files found.
src/api/common/list.js
View file @
d499e43a
...
...
@@ -94,4 +94,13 @@ export function userphone(id) {
url
:
`sys/user/userBasicInfo?id=
${
id
}
`
,
method
:
'get'
})
}
// 精简反参的公告列表
export
function
simpleList
(
params
)
{
return
request
({
url
:
"notice/simple/list"
,
method
:
'get'
,
params
:
params
})
}
\ No newline at end of file
src/api/supply/bid.js
View file @
d499e43a
...
...
@@ -126,20 +126,34 @@ export function affirm(data) {
data
:
data
})
}
// 查看澄清
export
function
clarifies
(
noticeId
)
{
// 查看澄清
详情
export
function
clarifies
Detail
(
noticeId
)
{
return
request
({
url
:
`bidder-clarifies/clarifies/
${
noticeId
}
`
,
url
:
`bidder-clarifies/clarifies/detail/
${
noticeId
}
`
,
method
:
'get'
,
})
}
// 查看问题详情
export
function
questionDetail
(
questionId
)
{
return
request
({
url
:
`bidder-clarifies/question/detail/
${
questionId
}
`
,
method
:
'get'
,
})
}
//查看某个澄清的 投标方列表
export
function
bidClarifies
(
params
)
{
return
request
({
url
:
'/clarifies/bid-clarifies/list'
,
// export function bidClarifies(params) {
// return request({
// url: '/clarifies/bid-clarifies/list',
// method: 'get',
// params: params
// })
// }
//.........--------------
// 变更公告查看
export
function
changeNoticelist
(
projectId
)
{
return
request
({
url
:
`bidder/project/changeNotice/list/
${
projectId
}
`
,
method
:
'get'
,
params
:
params
})
}
\ No newline at end of file
}
src/common/common.css
View file @
d499e43a
...
...
@@ -119,7 +119,8 @@ img {
.content
{
background
:
#fff
;
padding
:
20px
30px
padding
:
20px
30px
;
position
:
relative
;
}
.othercontent
{
...
...
src/components/common/Sidebar.vue
View file @
d499e43a
This diff is collapsed.
Click to expand it.
src/pages/purchaser/bid/bidStage/changeList/see.vue
View file @
d499e43a
...
...
@@ -14,8 +14,9 @@
</el-form-item>
<el-form-item
label=
"上传附件"
v-if=
"ruleForm.accessoryVOList"
>
<ul>
<li
v-for=
"(item,index) in ruleForm.accessoryVOList"
:key=
"index"
>
<div
@
click=
"open(item.accessoryUrl)"
>
{{
item
.
fileName
}}
</div>
<li
v-for=
"(item,index) in ruleForm.accessoryVOList"
:key=
"index"
class=
"flex"
>
<div
style=
"margin-right: 10px;"
>
{{
item
.
fileName
}}
</div>
<el-button
size=
"mini"
@
click=
"down(item.accessoryUrl)"
>
下载
</el-button>
</li>
</ul>
...
...
src/pages/purchaser/bid/bidStage/failList/failList.vue
View file @
d499e43a
...
...
@@ -78,29 +78,22 @@ export default {
handleSee
(
id
)
{
this
.
$router
.
push
(
`/purchaser/bid/bidStage/failList/see?id=
${
id
}
`
)
},
// async getabortiveList() {
// try {
// let projectId=localStorage.getItem("projectId");
// const {
// data,
// code
// } = await abortiveList(projectId)
// if (code === 200) {
// for (let item of data) {
// if (item.auditStatus === 0) {
// item.Status = '未审核'
// } else if (item.auditStatus === 1) {
// item.Status = '审核通过'
// } else {
// item.Status = '未通过'
// }
// }
// this.tableData = data
// }
// } catch (e) {
// console.log(e)
// }
// }
async
getabortiveList
()
{
try
{
let
message
=
{};
message
.
projectId
=
localStorage
.
getItem
(
"projectId"
);
message
.
type
=
"ABORTIVE"
const
{
data
,
code
}
=
await
simpleList
(
message
)
if
(
code
===
200
)
{
this
.
tableData
=
data
}
}
catch
(
e
)
{
console
.
log
(
e
)
}
}
}
}
</
script
>
...
...
src/pages/supply/bid/joinProject/bidStage/changeList/changeList.vue
View file @
d499e43a
<
template
>
<div>
<div
class=
"content"
>
<dataBreadcrumb
:breads=
"breads"
></dataBreadcrumb>
<el-button
class=
"absolute"
type=
"primary"
@
click=
"release"
>
发布变更公告
</el-button>
<dataTable
:table-data=
"tableData"
:columns=
"columns"
:is-pageobj=
"false"
:table-top=
"60"
>
<el-table-column
slot=
"operate"
label=
"操作"
align=
"center"
fixed=
"right"
width=
"100"
>
<template
slot-scope=
"scope"
>
<el-button
v-if=
"scope.row.state=='待修改'"
type=
"text"
size=
"small"
@
click=
"handleModify(scope.row)"
>
修改
</el-button>
<el-button
v-else
type=
"text"
size=
"small"
@
click=
"handleSee(scope.row)"
>
查看
</el-button>
</
template
>
</el-table-column>
</dataTable>
</div>
</div>
<div>
<div
class=
"content"
>
<dataBreadcrumb
:breads=
"breads"
></dataBreadcrumb>
<dataTable
:table-data=
"tableData"
:columns=
"columns"
:is-pageobj=
"false"
>
<el-table-column
slot=
"operate"
label=
"操作"
align=
"center"
fixed=
"right"
width=
"100"
>
<template
slot-scope=
"scope"
>
<el-button
type=
"text"
size=
"small"
@
click=
"handleSee(scope.row.noticeId)"
>
查看
</el-button>
</
template
>
</el-table-column>
</dataTable>
</div>
</div>
</template>
<
script
>
import
{
changeList
}
from
'@api/purchaser/bid'
import
dataBreadcrumb
from
'@components/dataBreadcrumb.vue'
import
dataTable
from
'@components/nopageTable.vue'
export
default
{
components
:
{
dataTable
,
dataBreadcrumb
},
data
()
{
return
{
projectId
:
2
,
breads
:
[
'招标管理 '
,
'招标项目管理'
,
'工作台'
],
tableData
:
[],
columns
:
[{
label
:
'公告名称'
,
prop
:
'title'
},
{
label
:
'创建时间'
,
prop
:
'createTime'
,
sortable
:
true
},
{
label
:
'状态'
,
prop
:
'auditStatus'
},
{
label
:
'备注'
,
prop
:
'remark'
},
{
slot
:
'operate'
}
]
// 操作列
}
},
created
()
{
this
.
getchangeList
()
},
methods
:
{
handleModify
()
{
this
.
$router
.
push
({
path
:
'/purchaser/bid/bidStage/changeList/changeNotice'
,
query
:
{
type
:
'modify'
}
})
},
release
()
{
this
.
$router
.
push
({
path
:
'/purchaser/bid/bidStage/changeList/changeNotice'
,
query
:
{
type
:
'release'
}
})
},
handleSee
()
{
this
.
$router
.
push
(
'/purchaser/bid/bidStage/changeList/see'
)
},
async
getchangeList
()
{
try
{
let
projectId
=
localStorage
.
getItem
(
"projectId"
);
const
{
data
,
code
}
=
await
changeList
(
projectId
)
if
(
code
===
200
)
{
for
(
let
item
of
data
)
{
if
(
item
.
auditStatus
===
0
)
{
item
.
auditStatus
=
'未审核'
}
else
if
(
item
.
auditStatus
===
1
)
{
item
.
auditStatus
=
'审核通过'
}
else
{
item
.
auditStatus
=
'未通过'
}
}
this
.
tableData
=
data
}
}
catch
(
e
)
{
console
.
log
(
e
)
}
}
}
}
import
{
changeNoticelist
}
from
'@api/supply/bid'
import
dataBreadcrumb
from
'@components/dataBreadcrumb.vue'
import
dataTable
from
'@components/nopageTable.vue'
export
default
{
components
:
{
dataTable
,
dataBreadcrumb
},
data
()
{
return
{
projectId
:
""
,
breads
:
[
'招标管理 '
,
'招标项目管理'
,
'工作台'
],
tableData
:
[],
columns
:
[{
label
:
'公告名称'
,
prop
:
'title'
},
{
label
:
'发布时间'
,
prop
:
'updateTime'
,
sortable
:
true
},
{
slot
:
'operate'
}
]
// 操作列
}
},
created
()
{
this
.
getchangeList
()
},
methods
:
{
// handleModify() {
// this.$router.push({
// path: '/purchaser/bid/bidStage/changeList/changeNotice',
// query: {
// type: 'modify'
// }
// })
// },
// release() {
// this.$router.push({
// path: '/purchaser/bid/bidStage/changeList/changeNotice',
// query: {
// type: 'release'
// }
// })
// },
handleSee
(
id
)
{
this
.
$router
.
push
(
`/supply/bid/joinProject/bidStage/changeList/see?id=
${
id
}
`
)
},
async
getchangeList
()
{
let
projectId
=
localStorage
.
getItem
(
"projectId"
);
console
.
log
(
projectId
)
const
{
data
,
code
}
=
await
changeNoticelist
(
projectId
)
this
.
tableData
=
data
}
}
}
</
script
>
<
style
scoped
>
...
...
src/pages/supply/bid/joinProject/bidStage/changeList/see.vue
View file @
d499e43a
<!-- <template>
<div>
<div class="content-head">
<dataBreadcrumb :breads="breads"></dataBreadcrumb>
<h3>查看变更公告</h3>
<h5>查看变更公告</h5>
</div>
<div class="content">
<div class="describe">变更公告</div>
<div class="form">
<el-form ref="ruleForm" :model="ruleForm" :rules="rules" label-width="120px" class="demo-ruleForm">
<el-form-item label="公告标题" prop="title">
<div>公告标题</div>
</el-form-item>
<el-form-item label="上传附件" prop="file">
</el-form-item>
<el-form-item label="公告内容" prop="content">
<div>公告内容</div>
</el-form-item>
</el-form>
<div class="button">
<el-button @click="cancle">返回</el-button>
</div>
</div>
</div>
</div>
</template>
<script>
import dataBreadcrumb from '@components/dataBreadcrumb.vue'
import multiUpload from '@components/Upload/multiUpload.vue'
import {
quillEditor
} from 'vue-quill-editor'
import 'quill/dist/quill.core.css'
import 'quill/dist/quill.snow.css'
import 'quill/dist/quill.bubble.css'
export default {
components: {
dataBreadcrumb,
multiUpload,
quillEditor
},
data() {
return {
editorOption: {},
breads: ['投标管理 ', '我参加的项目', '工作台'],
ruleForm: {
title: '',
content: ''
},
rules: {
title: [{
required: true,
message: '请输入',
trigger: 'blue'
}],
release: [{
required: true,
message: '请输入',
trigger: 'blue'
}
],
file: [{
required: true,
message: '请输入',
trigger: 'blue'
}],
content: [{
required: true,
message: '请输入',
trigger: 'blue'
}]
}
}
},
methods: {
cancle() {
this.$router.go(-1)
}
}
}
</script>
<style scoped>
.content {
padding: 0;
padding-bottom: 100px;
}
.button{
width: 200px;
margin:150px auto 0
}
</style> -->
<
template
>
<div>
...
...
@@ -108,13 +11,18 @@ export default {
<div
class=
"form"
>
<el-form
ref=
"ruleForm"
:model=
"ruleForm"
:rules=
"rules"
label-width=
"120px"
class=
"demo-ruleForm"
>
<el-form-item
label=
"公告标题"
prop=
"title"
>
<div>
公告标题
</div>
<div>
{{
ruleForm
.
title
}}
</div>
</el-form-item>
<el-form-item
label=
"上传附件"
prop=
"file"
>
<!--
<multiUpload
tips=
"支持扩展名:.rar .zip .doc .docx .pdf .jpg..."
></multiUpload>
-->
<el-form-item
label=
"公告附件"
v-if=
"ruleForm.accessoryVOList.length>0"
>
<ul>
<li
v-for=
"item in ruleForm.accessoryVOList"
:key=
"item.id"
class=
"flex-item"
>
<div
style=
"margin-right: 10px;"
>
{{
item
.
fileName
}}
</div>
<el-button
size=
"mini"
@
click=
"down(item.accessoryUrl)"
>
下载
</el-button>
</li>
</ul>
</el-form-item>
<el-form-item
label=
"公告内容"
prop=
"content"
>
<div
>
公告内容
</div>
<div
v-html=
"ruleForm.content"
>
</div>
</el-form-item>
</el-form>
<div
class=
"button"
>
...
...
@@ -151,6 +59,9 @@ export default {
this
.
changeDetail
(
1
)
},
methods
:
{
down
(
url
){
window
.
open
(
url
)
},
cancle
()
{
this
.
$router
.
go
(
-
1
)
},
...
...
@@ -161,7 +72,7 @@ export default {
code
}
=
await
noticeChange
(
id
)
if
(
code
===
200
)
{
this
.
detail
=
data
this
.
ruleForm
=
data
}
}
catch
(
e
)
{
console
.
log
(
e
)
...
...
src/pages/supply/bid/joinProject/bidStage/clearManagement/clearManagement.vue
View file @
d499e43a
...
...
@@ -10,28 +10,18 @@
<dataTable
:columns=
"columns"
:page-obj=
"pageObj"
url=
"bidder-clarifies/list"
>
<el-table-column
slot=
"operate"
label=
"操作"
align=
"center"
fixed=
"right"
width=
"100"
>
<template
slot-scope=
"scope"
>
<div
v-if=
"scope.row.clarifiesType==0"
>
<el-button
type=
"text"
size=
"small"
@
click=
"handleSee(scope.row)"
>
查看
</el-button>
</div>
<div
v-else
>
<el-button
v-if=
"scope.row.noticeId"
type=
"text"
size=
"small"
@
click=
"handleSee(scope.row)"
>
查看
</el-button>
<el-button
v-else
type=
"text"
size=
"small"
@
click=
"handleReply(scope.row)"
>
回复
</el-button>
</div>
<el-button
v-if=
"scope.row.operaion=='待确认'"
type=
"text"
size=
"small"
@
click=
"confirm(scope.row)"
>
确认
</el-button>
<el-button
v-else
type=
"text"
size=
"small"
@
click=
"handleSee(scope.row)"
>
查看
</el-button>
</
template
>
</el-table-column>
</dataTable>
</div>
<div
v-show=
"idx==1"
>
<dataTable
:columns=
"columns"
:page-obj=
"pageObj1"
url=
"bidder-clarifies/list"
>
<el-table-column
slot=
"operate"
label=
"操作"
align=
"center"
fixed=
"right"
width=
"100"
>
<el-table-column
slot=
"operate"
label=
"操作"
align=
"center"
fixed=
"right"
width=
"100"
>
<
template
slot-scope=
"scope"
>
<div
v-if=
"scope.row.clarifiesType==0"
>
<el-button
type=
"text"
size=
"small"
@
click=
"handleSee(scope.row)"
>
查看
</el-button>
</div>
<div
v-else
>
<el-button
v-if=
"scope.row.noticeId"
type=
"text"
size=
"small"
@
click=
"handleSee(scope.row)"
>
查看
</el-button>
<el-button
v-else
type=
"text"
size=
"small"
@
click=
"handleReply(scope.row)"
>
回复
</el-button>
</div>
<el-button
v-if=
"scope.row.operaion=='待确认'"
type=
"text"
size=
"small"
@
click=
"confirm(scope.row)"
>
确认
</el-button>
<el-button
v-else
type=
"text"
size=
"small"
@
click=
"handleSee1(scope.row)"
>
查看
</el-button>
</
template
>
</el-table-column>
</dataTable>
...
...
@@ -82,9 +72,17 @@
prop
:
'createTime'
,
sortable
:
true
},
{
label
:
'状态'
,
prop
:
'operaion'
},
{
label
:
'提出人'
,
prop
:
'createBy'
prop
:
'tenderCompanyName'
},
{
label
:
'回复人'
,
prop
:
'bidCompanyName'
},
{
slot
:
'operate'
...
...
@@ -118,16 +116,35 @@
getIndex
(
value
){
this
.
idx
=
value
},
handleSee
(
id
)
{
// 问题查看
handleSee
(
row
)
{
this
.
$router
.
push
({
path
:
'/supply/bid/joinProject/bidStage/clearManagement/see'
,
query
:
{
questionId
:
row
.
questionId
,
type
:
"question"
}
})
},
// 公开查看
handleSee1
(
row
)
{
this
.
$router
.
push
({
path
:
'/supply/bid/joinProject/bidStage/clearManagement/see'
,
query
:
id
query
:
{
noticeId
:
row
.
noticeId
,
type
:
"notice"
}
})
},
confirm
(
id
)
{
// 确定
confirm
(
row
)
{
this
.
$router
.
push
({
path
:
'/supply/bid/joinProject/bidStage/clearManagement/confirm'
,
query
:
id
query
:
{
noticeId
:
row
.
noticeId
,
bidCompanyName
:
row
.
bidCompanyName
,
title
:
row
.
title
}
})
},
out
()
{
...
...
@@ -142,6 +159,6 @@
.absolute
{
position
:
absolute
;
right
:
50px
;
top
:
80
px
top
:
65
px
}
</
style
>
src/pages/supply/bid/joinProject/bidStage/clearManagement/confirm.vue
View file @
d499e43a
...
...
@@ -7,14 +7,17 @@
</div>
<div
class=
"content flex-center"
>
<div>
<h3>
这里显示招标方单位名称:
</h3>
<h5>
我单位已收到贵公司发出的项目【这里是参与的项目名称】澄清标题为【这里是招标方发出澄清的标题】的澄清文件,特此回执
</h5>
<h4>
*回执文件
</h4>
<h3>
{{
bidCompanyName
}}
</h3>
<h5>
我单位已收到贵公司发出的项目
{{
projectName
}}
澄清标题为
{{
title
}}
的澄清文件,特此回执
</h5>
<div
class=
"flex"
>
<h4
class=
'adjustment'
>
*回执文件
</h4>
<singleUpload
:limit=
"5"
accept=
".jpg,.jpeg,.gif,.png,.bmp"
:max=
"10"
tip=
"请下载澄清回执模板后,打印、盖章,再上传扫描件,单个文件不能超过10M,文件个数不得超过5个,文件格式为图片。"
@
input=
"getfile"
></singleUpload>
</div>
<div
class=
"flex-center"
style=
"margin-top:100px"
>
<el-button
@
click=
"back"
>
返回
</el-button>
</div>
</div>
</div>
</div>
</
template
>
...
...
@@ -22,12 +25,17 @@
<
script
>
import
dataBreadcrumb
from
'@components/dataBreadcrumb.vue'
import
singleUpload
from
'@components/Upload/Upload.vue'
export
default
{
components
:
{
dataBreadcrumb
dataBreadcrumb
,
singleUpload
},
data
()
{
return
{
title
:
""
,
projectName
:
""
,
bidCompanyName
:
""
,
breads
:
[
'招标管理'
,
'招标项目管理'
,
'工作台'
],
}
...
...
@@ -36,8 +44,16 @@ export default {
back
()
{
this
.
$router
.
go
(
-
1
)
},
getfile
(){
}
},
created
()
{
this
.
bidCompanyName
=
this
.
$route
.
query
.
bidCompanyName
;
this
.
projectName
=
localStorage
.
getItem
(
"projectName"
);
this
.
title
=
this
.
$route
.
query
.
title
;
this
.
noticeId
=
this
.
$route
.
query
.
noticeId
}
}
</
script
>
...
...
src/pages/supply/bid/joinProject/bidStage/clearManagement/see.vue
View file @
d499e43a
...
...
@@ -2,44 +2,74 @@
<div>
<div
class=
"content-head"
>
<dataBreadcrumb
:breads=
"breads"
></dataBreadcrumb>
<h3>
查看
澄清
</h3>
<h5>
查看
澄清
</h5>
<h3>
查看
</h3>
<h5>
查看
</h5>
</div>
<div
class=
"content"
>
<!-- 澄清 -->
<div
class=
"content"
v-if=
"clarifies"
>
<div
class=
"describe"
>
澄清公告信息
</div>
<div
class=
"clear-message"
>
<div
class=
"flex-item clear-item"
>
<div>
澄清公告标题:
</div>
<div>
文本标签文本标签文本标签文本标签文本标签文本标签文本标签文本标签文本标签文本标签
</div>
<div>
{{
clarifies
.
title
}}
</div>
</div>
<div
class=
"flex-item clear-item"
>
<div>
公告发布媒体:
</div>
<div>
捷安采官网招投标专区
</div>
</div>
<div
class=
"flex-item clear-item"
>
<div
class=
"flex-item clear-item"
v-if=
"clarifieslist.length>0"
>
<div>
澄清文件:
</div>
<ul>
<li>
<span>
111.pdf
</span>
<el-button>
下载
</el-button>
<li
v-for=
"item in clarifies.clarifieslist"
:key=
"item.id"
>
<span>
{{
item
.
fileName
}}
</span>
<el-button
@
click=
"down(item.accessoryUrl)"
>
下载
</el-button>
</li>
</ul>
</div>
<div
class=
"flex
-item
clear-item"
>
<div>
公告
内容:
</div>
<div
>
公告内容
</div>
<div
class=
"flex clear-item"
>
<div>
澄清
内容:
</div>
<div
v-html=
"clarifies.content"
style=
"width:80%;"
>
</div>
</div>
</div>
<div
class=
"button"
>
<el-button
@
click=
"cancle"
>
返回
</el-button>
<el-button
type=
"primary"
>
确认
</el-button>
</div>
<div
class=
"button"
>
<el-button
@
click=
"cancle"
>
返回
</el-button>
</div>
</div>
<!-- 问题详情 -->
<div
class=
"content"
v-if=
"question"
>
<div
class=
"describe"
>
问题信息
</div>
<div
class=
"clear-message"
>
<div
class=
"flex-item clear-item"
>
<div>
问题标题:
</div>
<div>
{{
question
.
title
}}
</div>
</div>
<div
class=
"flex-item clear-item"
>
<div>
公告发布媒体:
</div>
<div>
捷安采官网招投标专区
</div>
</div>
<div
class=
"flex-item clear-item"
v-if=
'questionlist.length>0'
>
<div>
问题文件:
</div>
<ul>
<li
v-for=
"item in questionlist"
:key=
"item.id"
>
<span>
{{
item
.
fileName
}}
</span>
<el-button
@
click=
"down(item.accessoryUrl)"
>
下载
</el-button>
</li>
</ul>
</div>
<div
class=
"flex clear-item"
>
<div>
问题内容:
</div>
<div
v-html=
"question.content"
style=
"width:80%;"
></div>
</div>
</div>
<div
class=
"button"
>
<el-button
@
click=
"cancle"
>
返回
</el-button>
</div>
</div>
</div>
</
template
>
<
script
>
import
{
clarifies
}
from
'@api/supply/bid'
import
{
clarifies
Detail
,
questionDetail
}
from
'@api/supply/bid'
import
dataBreadcrumb
from
'@components/dataBreadcrumb.vue'
import
multiUpload
from
'@components/Upload/multiUpload.vue'
import
dataTable
from
'@components/nopageTable.vue'
...
...
@@ -51,28 +81,55 @@ export default {
},
data
()
{
return
{
detail
:
""
,
question
:
""
,
clarifies
:
""
,
breads
:
[
'投标管理'
,
'我参与的项目'
,
'工作台'
],
ruleForm
:
{
title
:
''
,
content
:
""
},
}
},
methods
:
{
down
(
url
){
window
.
open
(
url
)
},
cancle
()
{
this
.
$router
.
go
(
-
1
)
},
async
clarifies
()
{
// 澄清公告详情
async
getclarifiesDetail
(
id
)
{
const
{
data
,
code
}
=
await
clarifies
(
1
)
this
.
detail
=
data
}
}
=
await
clarifiesDetail
(
id
)
this
.
clarifies
=
data
.
noticeClarifiesDO
this
.
clarifieslist
=
data
.
noticeClarifiesDO
this
.
question
=
data
.
clarifiesDO
this
.
questionlist
=
data
.
clarifiesAccessoryList
},
// 问题详情
async
getquestionDetail
(
id
)
{
const
{
data
,
code
}
=
await
questionDetail
(
id
)
this
.
clarifies
=
data
.
noticeClarifiesDO
this
.
clarifieslist
=
data
.
noticeClarifiesDO
this
.
question
=
data
.
clarifiesDO
this
.
questionlist
=
data
.
clarifiesAccessoryList
}
},
created
()
{
this
.
clarifies
()
let
type
=
this
.
$route
.
query
.
type
;
let
id
=
''
;
if
(
type
==
"question"
){
id
=
this
.
$route
.
query
.
questionId
this
.
getquestionDetail
(
id
)
}
else
{
id
=
this
.
$route
.
query
.
noticeId
this
.
getclarifiesDetail
(
id
)
}
}
}
</
script
>
...
...
@@ -95,7 +152,7 @@ export default {
.clear-message
{
margin-left
:
70px
;
width
:
350px
/* width: 350px */
}
.clear-message
>
div
>
span
{
...
...
@@ -108,13 +165,14 @@ export default {
margin
:
20px
0
20px
20px
}
.clear-item
>
div
:last-child
{
/*
.clear-item>div:last-child {
width: 200px;
}
*/
.clear-item
>
div
:first-child
{
margin-right
:
30px
;
}
.clear-message
>
div
{
...
...
src/pages/supply/bid/joinProject/bidStage/failList/failList.vue
View file @
d499e43a
<!-- <template>
<div >
<div class="content">
<dataBreadcrumb :breads="breads"></dataBreadcrumb>
<dataTable :table-data="tableData" :columns="columns" :is-pageobj="false" >
<el-table-column slot="operate" label="操作" align="center" fixed="right" width="100">
<template slot-scope="scope">
<el-button v-if="scope.row.state=='待修改'" type="text" size="small" @click="handleModify(scope.row)">修改</el-button>
<el-button v-else type="text" size="small" @click="handleSee(scope.row)">查看</el-button>
</template>
</el-table-column>
</dataTable>
</div>
</div>
</template>
<script>
import dataBreadcrumb from '@components/dataBreadcrumb.vue'
import dataTable from '@components/dataTable.vue'
export default {
name: 'bidingList',
components: {
dataTable,
dataBreadcrumb
},
data() {
return {
breads: ['投标管理 ', '我参加的项目', '工作台'],
tableData: [{
name: '涿州市鼓楼大街(范阳路至永济路段)及周边区域街巷改造工程监理',
person: '腾讯4',
data: '2017-10-01 12:00',
state: '待审核',
remark: '错别字'
}, {
name: '涿州市鼓楼大街(范阳路至永济路段)及周边区域街巷改造工程监理',
person: '腾讯3',
data: '2017-10-01 13:00',
state: '待审核',
remark: '错别字'
}, {
name: '涿州市鼓楼大街(范阳路至永济路段)及周边区域街巷改造工程监理',
person: '腾讯2',
data: '2017-10-01 14:00',
state: '待修改',
remark: '错别字'
}, {
name: '涿州市鼓楼大街(范阳路至永济路段)及周边区域街巷改造工程监理',
person: '腾讯1',
data: '2017-10-01 15:00',
state: '待审核',
remark: '已发布'
}],
columns: [{
label: '公告名称',
prop: 'name',
width: 500
},
{
label: '发布时间',
prop: 'data',
sortable: true
},
{
slot: 'operate'
}
], // 操作列
pageObj: {
size: 10,
total: 1,
currentPage: 1,
sizes: [100, 200, 300],
func: (currentPage) => {
this.pageTurning(currentPage)
}
}
}
},
methods: {
handleModify() {
this.$router.push({
path: '/purchaser/bid/bidStage/failList/failNotice',
query: { type: 'modify' }
}
)
},
release() {
this.$router.push({
path: '/purchaser/bid/bidStage/failList/failNotice',
query: { type: 'release' }
}
)
},
handleSee() {
this.$router.push('/purchaser/bid/bidStage/failList/see')
}
}
}
</script>
<style scoped>
.absolute{
position: absolute;
top:65px
}
</style> -->
<
template
>
<div>
<div
class=
"content"
>
<dataBreadcrumb
:breads=
"breads"
></dataBreadcrumb>
<el-button
class=
"absolute"
type=
"primary"
@
click=
"release"
>
发布流标公告
</el-button>
<dataTable
:table-data=
"tableData"
:columns=
"columns"
:is-pageobj=
"false"
:table-top=
"60"
>
<dataTable
:table-data=
"tableData"
:columns=
"columns"
:is-pageobj=
"false"
>
<el-table-column
slot=
"operate"
label=
"操作"
align=
"center"
fixed=
"right"
width=
"100"
>
<template
slot-scope=
"scope"
>
<el-button
v-if=
"scope.row.state=='待修改'"
type=
"text"
size=
"small"
@
click=
"handleModify(scope.row)"
>
修改
</el-button>
<el-button
v-else
type=
"text"
size=
"small"
@
click=
"handleSee(scope.row)"
>
查看
</el-button>
<el-button
type=
"text"
size=
"small"
@
click=
"handleSee(scope.row.noticeId)"
>
查看
</el-button>
</
template
>
</el-table-column>
</dataTable>
...
...
@@ -126,8 +15,8 @@ export default {
<
script
>
import
{
abortiv
eList
}
from
'@api/
purchaser/bid
'
simpl
eList
}
from
'@api/
common/list
'
import
dataBreadcrumb
from
'@components/dataBreadcrumb.vue'
import
dataTable
from
'@components/nopageTable.vue'
export
default
{
...
...
@@ -143,22 +32,13 @@ export default {
tableData
:
[],
columns
:
[{
label
:
'公告名称'
,
prop
:
'name'
,
width
:
500
prop
:
'title'
,
},
{
label
:
'创建时间'
,
prop
:
'
data
'
,
prop
:
'
updateTime
'
,
sortable
:
true
},
{
label
:
'状态'
,
prop
:
'state'
},
{
label
:
'备注'
,
prop
:
'remark'
},
{
slot
:
'operate'
}
...
...
@@ -170,42 +50,19 @@ export default {
this
.
getabortiveList
()
},
methods
:
{
handleModify
()
{
this
.
$router
.
push
({
path
:
'/purchaser/bid/bidStage/failList/failNotice'
,
query
:
{
type
:
'modify'
}
})
},
release
()
{
this
.
$router
.
push
({
path
:
'/purchaser/bid/bidStage/failList/failNotice'
,
query
:
{
type
:
'release'
}
})
},
handleSee
()
{
this
.
$router
.
push
(
'/purchaser/bid/bidStage/failList/see'
)
handleSee
(
id
)
{
this
.
$router
.
push
(
`/supply/bid/joinProject/bidStage/failList/see?id=
${
id
}
`
)
},
async
getabortiveList
()
{
try
{
let
projectId
=
localStorage
.
getItem
(
"projectId"
);
let
message
=
{};
message
.
projectId
=
localStorage
.
getItem
(
"projectId"
);
message
.
type
=
"ABORTIVE"
const
{
data
,
code
}
=
await
abortiveList
(
projectId
)
}
=
await
simpleList
(
message
)
if
(
code
===
200
)
{
for
(
let
item
of
data
)
{
if
(
item
.
auditStatus
===
0
)
{
item
.
auditStatus
=
'未审核'
}
else
if
(
item
.
auditStatus
===
1
)
{
item
.
auditStatus
=
'审核通过'
}
else
{
item
.
auditStatus
=
'未通过'
}
}
this
.
tableData
=
data
}
}
catch
(
e
)
{
...
...
src/pages/supply/bid/joinProject/bidStage/failList/see.vue
View file @
d499e43a
<!-- <template>
<div>
<div class="content-head">
<dataBreadcrumb :breads="breads"></dataBreadcrumb>
<h3>查看流标公告</h3>
<h5>查看流标公告</h5>
</div>
<div class="content">
<div class="describe">流标公告</div>
<div class="form">
<el-form ref="ruleForm" :model="ruleForm" :rules="rules" label-width="120px" class="demo-ruleForm">
<el-form-item label="公告标题" prop="title">
<div>公告标题</div>
</el-form-item>
<el-form-item label="上传附件" prop="file">
</el-form-item>
<el-form-item label="公告内容" prop="content">
<div>公告内容</div>
</el-form-item>
</el-form>
<div class="button">
<el-button @click="cancle">返回</el-button>
</div>
</div>
</div>
</div>
<
template
>
<div>
<div
class=
"content-head"
>
<dataBreadcrumb
:breads=
"breads"
></dataBreadcrumb>
<h3>
查看流标公告
</h3>
<h5>
查看流标公告
</h5>
</div>
<div
class=
"content"
>
<div
class=
"describe"
>
变更公告
</div>
<div
class=
"form"
>
<el-form
ref=
"ruleForm"
:model=
"ruleForm"
label-width=
"120px"
class=
"demo-ruleForm"
>
<el-form-item
label=
"公告标题"
>
<div>
{{
ruleForm
.
title
}}
</div>
</el-form-item>
<el-form-item
label=
"上传附件"
v-if=
"ruleForm.accessoryVOList"
>
<ul>
<li
v-for=
"(item,index) in ruleForm.accessoryVOList"
:key=
"index"
class=
"flex"
>
<div
style=
"margin-right: 10px;"
>
{{
item
.
fileName
}}
</div>
<el-button
size=
"mini"
@
click=
"down(item.accessoryUrl)"
>
下载
</el-button>
</li>
</ul>
</el-form-item>
<el-form-item
label=
"公告内容"
>
<div
v-html=
"ruleForm.content"
></div>
</el-form-item>
</el-form>
<div
class=
"button"
>
<el-button
@
click=
"cancle"
>
返回
</el-button>
</div>
</div>
</div>
</div>
</
template
>
<
script
>
import dataBreadcrumb from '@components/dataBreadcrumb.vue'
import multiUpload from '@components/Upload/multiUpload.vue'
import {
quillEditor
} from 'vue-quill-editor'
import 'quill/dist/quill.core.css'
import 'quill/dist/quill.snow.css'
import 'quill/dist/quill.bubble.css'
export default {
components: {
dataBreadcrumb,
multiUpload,
quillEditor
},
data() {
return {
editorOption: {},
breads: ['投标管理 ', '我参加的项目', '工作台'],
ruleForm: {
title: '',
content: ''
},
rules: {
title: [{
required: true,
message: '请输入',
trigger: 'blue'
}],
release: [{
required: true,
message: '请输入',
trigger: 'blue'
}
],
file: [{
required: true,
message: '请输入',
trigger: 'blue'
}],
content: [{
required: true,
message: '请输入',
trigger: 'blue'
}]
}
}
},
import
{
noticeAbortive
}
from
'@api/purchaser/bid'
import
dataBreadcrumb
from
'@components/dataBreadcrumb.vue'
import
multiUpload
from
'@components/Upload/multiUpload.vue'
export
default
{
components
:
{
dataBreadcrumb
,
multiUpload
,
},
data
()
{
return
{
editorOption
:
{},
breads
:
[
'招标管理'
,
'招标项目管理'
,
'工作台'
],
ruleForm
:
{
title
:
''
,
content
:
''
},
rules
:
{
title
:
[{
required
:
true
,
message
:
'请输入'
,
trigger
:
'blue'
}],
release
:
[{
required
:
true
,
message
:
'请输入'
,
trigger
:
'blue'
}],
file
:
[{
required
:
true
,
message
:
'请输入'
,
trigger
:
'blue'
}],
content
:
[{
required
:
true
,
message
:
'请输入'
,
trigger
:
'blue'
}]
}
}
},
created
()
{
let
id
=
this
.
$route
.
query
.
id
;
this
.
abortiveDetail
(
id
)
},
methods
:
{
cancle
()
{
this
.
$router
.
go
(
-
1
)
},
async
abortiveDetail
(
id
)
{
try
{
const
{
data
,
code
}
=
await
noticeAbortive
(
id
)
if
(
code
===
200
)
{
this
.
ruleForm
=
data
}
}
catch
(
e
)
{
console
.
log
(
e
)
}
}
}
methods: {
cancle() {
this.$router.go(-1)
}
}
}
}
</
script
>
...
...
@@ -90,125 +107,9 @@ export default {
padding
:
0
;
padding-bottom
:
100px
;
}
.button{
.button
{
width
:
200px
;
margin:150px auto 0
margin
:
150px
auto
0
}
</
style
>
-->
<
template
>
<div>
<div
class=
"content-head"
>
<dataBreadcrumb
:breads=
"breads"
></dataBreadcrumb>
<h3>
查看流标公告
</h3>
<h5>
查看流标公告
</h5>
</div>
<div
class=
"content"
>
<div
class=
"describe"
>
流标公告
</div>
<div
class=
"form"
>
<el-form
ref=
"ruleForm"
:model=
"ruleForm"
:rules=
"rules"
label-width=
"120px"
class=
"demo-ruleForm"
>
<el-form-item
label=
"公告标题"
prop=
"title"
>
<div>
公告标题
</div>
</el-form-item>
<el-form-item
label=
"上传附件"
prop=
"file"
>
<!--
<multiUpload
tips=
"支持扩展名:.rar .zip .doc .docx .pdf .jpg..."
></multiUpload>
-->
</el-form-item>
<el-form-item
label=
"公告内容"
prop=
"content"
>
<div>
公告内容
</div>
</el-form-item>
</el-form>
<div
class=
"button"
>
<el-button
@
click=
"cancle"
>
返回
</el-button>
</div>
</div>
</div>
</div>
</
template
>
<
script
>
import
{
noticeAbortive
}
from
'@api/purchaser/bid'
import
dataBreadcrumb
from
'@components/dataBreadcrumb.vue'
import
multiUpload
from
'@components/Upload/multiUpload.vue'
import
{
quillEditor
}
from
'vue-quill-editor'
import
'quill/dist/quill.core.css'
import
'quill/dist/quill.snow.css'
import
'quill/dist/quill.bubble.css'
export
default
{
components
:
{
dataBreadcrumb
,
multiUpload
,
quillEditor
},
data
()
{
return
{
editorOption
:
{},
breads
:
[
'招标管理'
,
'招标项目管理'
,
'工作台'
],
ruleForm
:
{
title
:
''
,
content
:
''
},
rules
:
{
title
:
[{
required
:
true
,
message
:
'请输入'
,
trigger
:
'blue'
}],
release
:
[{
required
:
true
,
message
:
'请输入'
,
trigger
:
'blue'
}],
file
:
[{
required
:
true
,
message
:
'请输入'
,
trigger
:
'blue'
}],
content
:
[{
required
:
true
,
message
:
'请输入'
,
trigger
:
'blue'
}]
}
}
},
created
()
{
this
.
changeDetail
(
1
)
},
methods
:
{
cancle
()
{
this
.
$router
.
go
(
-
1
)
},
async
abortiveDetail
(
id
)
{
try
{
const
{
data
,
code
}
=
await
noticeAbortive
(
id
)
if
(
code
===
200
)
{
this
.
detail
=
data
}
}
catch
(
e
)
{
console
.
log
(
e
)
}
}
}
}
</
script
>
<
style
scoped
>
.content
{
padding
:
0
;
padding-bottom
:
100px
;
}
.button
{
width
:
200px
;
margin
:
150px
auto
0
}
</
style
>
\ No newline at end of file
src/pages/supply/bid/joinProject/workbench.vue
View file @
d499e43a
...
...
@@ -47,6 +47,10 @@ export default {
{
title
:
'招标'
,
modulars
:[
{
label
:
"查看询价公告"
,
url
:
"/supply/bid/joinProject/bidStage/projectInformation"
},
{
label
:
"查看询价公告"
,
url
:
"/supply/bid/signupOnline/seePrice"
...
...
src/utils/request.js
View file @
d499e43a
...
...
@@ -5,8 +5,8 @@ import { Message, MessageBox } from 'element-ui'
// 创建axios实例
const
service
=
axios
.
create
({
baseURL
:
'http://192.168.200.201:8082/apis'
,
//
baseURL: 'http://192.168.3.35:8085/apis',
//
baseURL: 'http://192.168.200.201:8082/apis',
baseURL
:
'http://192.168.3.35:8085/apis'
,
timeout
:
35000
// 请求超时时间
})
...
...
@@ -41,8 +41,8 @@ service.interceptors.response.use(
Message
.
error
(
"登陆失效,请重新登录!"
)
localStorage
.
removeItem
(
'token'
);
setTimeout
(
function
()
{
location
.
href
=
'http://192.168.200.201:8081/login/user/'
;
//
location.href = 'http://localhost:3000/login/user/';
//
location.href = 'http://192.168.200.201:8081/login/user/';
location
.
href
=
'http://localhost:3000/login/user/'
;
},
2000
);
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment