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
4aad38f2
Commit
4aad38f2
authored
Oct 21, 2020
by
张冬
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
更换整个后台的颜色
parent
ba82a14e
Show whitespace changes
Inline
Side-by-side
Showing
21 changed files
with
335 additions
and
321 deletions
+335
-321
App.vue
src/App.vue
+3
-2
bid.js
src/api/supply/bid.js
+2
-1
color-green.css
src/assets/css/theme-green/color-green.css
+12
-11
index.css
src/assets/css/theme-green/index.css
+0
-0
Upload.vue
src/components/Upload/Upload.vue
+0
-3
imgUpload.vue
src/components/Upload/imgUpload.vue
+0
-3
Sidebar.vue
src/components/common/Sidebar.vue
+3
-3
priceDetail.vue
src/components/detail/priceDetail.vue
+1
-1
main.js
src/main.js
+2
-2
content.vue
...es/purchaser/bid/bidEvaluation/projectManager/content.vue
+10
-5
review.vue
src/pages/purchaser/bid/bidEvaluation/review/review.vue
+13
-8
see.vue
src/pages/purchaser/bid/bidEvaluation/review/see.vue
+1
-1
detail.vue
src/pages/purchaser/bid/bidStage/bondList/detail.vue
+65
-81
detail.vue
src/pages/purchaser/bid/bidStage/tenderFeelist/detail.vue
+63
-79
see.vue
src/pages/purchaser/bid/bidSure/see.vue
+146
-107
list.vue
src/pages/purchaser/bid/bidSure/winBid/list.vue
+1
-1
detail.vue
src/pages/supply/bid/joinProject/bidStage/bond/detail.vue
+4
-5
see.vue
src/pages/supply/bid/joinProject/bidStage/changeList/see.vue
+2
-1
fileDownload.vue
src/pages/supply/bid/joinProject/bidStage/fileDownload.vue
+1
-1
detail.vue
...ages/supply/bid/joinProject/bidStage/tenderFee/detail.vue
+4
-4
seePrice.vue
src/pages/supply/bid/signupOnline/seePrice.vue
+2
-2
No files found.
src/App.vue
View file @
4aad38f2
...
...
@@ -6,6 +6,6 @@
<
style
>
@import
'./common/common.css'
;
@import
"./assets/css/main.css"
;
@import
"./assets/css/color-dark.css"
;
/*深色主题
*/
/*@import "./assets/css/theme-green/color-green.css"; 浅绿色主题*/
/* @import "./assets/css/color-dark.css";
*/
@import
"./assets/css/theme-green/color-green.css"
;
</
style
>
\ No newline at end of file
src/api/supply/bid.js
View file @
4aad38f2
...
...
@@ -371,10 +371,11 @@ export function earnestEdit(data) {
}
// 新增接口
// 查看是否报价状态
export
function
isOffer
(
projectId
)
{
return
request
({
url
:
`bidder-apply/isOffer/
${
projectId
}
`
,
method
:
'get'
,
})
}
src/assets/css/theme-green/color-green.css
View file @
4aad38f2
.header
{
background-color
:
#
07c4a8
;
background-color
:
#
FF5203
;
}
.login-wrap
{
background
:
rgba
(
56
,
157
,
170
,
0.82
)
;
;
background
:
#FF5203
;
;
}
.plugins-tips
{
background
:
#
f2f2f2
;
background
:
#
FF5203
;
}
.plugins-tips
a
{
color
:
#
00d1b2
;
color
:
#
FF5203
;
}
.el-upload--text
em
{
color
:
#
00d1b2
;
color
:
#
FF5203
;
}
.pure-button
{
background
:
#
00d1b2
;
background
:
#
FF5203
;
}
.pagination
>
.active
>
a
,
.pagination
>
.active
>
a
:hover
,
.pagination
>
.active
>
a
:focus
,
.pagination
>
.active
>
span
,
.pagination
>
.active
>
span
:hover
,
.pagination
>
.active
>
span
:focus
{
background-color
:
#
00d1b2
!important
;
border-color
:
#
00d1b2
!important
;
background-color
:
#
FF5203
!important
;
border-color
:
#
FF5203
!important
;
}
.tags-li.active
{
border
:
1px
solid
#
00d1b2
;
background-color
:
#
00d1b2
;
border
:
1px
solid
#
FF5203
;
background-color
:
#
FF5203
;
}
.collapse-btn
:hover
{
background
:
#
00d1b2
;
background
:
#
FF5203
;
}
\ No newline at end of file
src/assets/css/theme-green/index.css
View file @
4aad38f2
This source diff could not be displayed because it is too large. You can
view the blob
instead.
src/components/Upload/Upload.vue
View file @
4aad38f2
...
...
@@ -78,9 +78,7 @@ export default {
let
value
=
[]
for
(
let
i
=
0
;
i
<
fileList
.
length
;
i
++
)
{
let
message
=
{}
message
.
name
=
fileList
[
i
].
name
message
.
fileName
=
fileList
[
i
].
name
message
.
url
=
fileList
[
i
].
url
message
.
fileUrl
=
fileList
[
i
].
url
message
.
uid
=
fileList
[
i
].
uid
value
.
push
(
message
)
...
...
@@ -125,7 +123,6 @@ export default {
let
objName
=
getFileNameUUID
()
// 调用 ali-oss 中的方法
put
(
`
${
objName
}${
option
.
file
.
name
}
`
,
option
.
file
).
then
(
res
=>
{
res
.
fileName
=
option
.
file
.
name
;
this
.
fileList
.
push
(
res
)
console
.
log
(
this
.
fileList
)
this
.
emitInput
(
this
.
fileList
)
...
...
src/components/Upload/imgUpload.vue
View file @
4aad38f2
...
...
@@ -69,11 +69,8 @@ export default {
console
.
log
(
fileList
)
for
(
let
i
=
0
;
i
<
fileList
.
length
;
i
++
)
{
let
message
=
{}
message
.
name
=
fileList
[
i
].
name
message
.
fileName
=
fileList
[
i
].
name
message
.
url
=
fileList
[
i
].
url
message
.
fileUrl
=
fileList
[
i
].
url
message
.
uid
=
fileList
[
i
].
uid
value
.
push
(
message
)
}
this
.
$emit
(
'input'
,
value
)
...
...
src/components/common/Sidebar.vue
View file @
4aad38f2
...
...
@@ -4,9 +4,9 @@
class=
"sidebar-el-menu"
:default-active=
"onRoutes"
:collapse=
"collapse"
background-color=
"#
324157
"
text-color=
"#
bfcbd9
"
active-text-color=
"#
20a0
ff"
background-color=
"#
FF5203
"
text-color=
"#
fff
"
active-text-color=
"#
f
ff"
unique-opened
router
>
...
...
src/components/detail/priceDetail.vue
View file @
4aad38f2
...
...
@@ -54,7 +54,7 @@
<dataTable
:table-data=
"detail.commodityVOList"
:columns=
"columns"
></dataTable>
<div
class=
"appendix list pos"
>
<div>
附件
</div>
<ul
v-if=
"detail.accessoryVOList"
class=
"filelist"
>
<ul
v-if=
"detail.accessoryVOList
.length>0
"
class=
"filelist"
>
<li
v-for=
"(item,index) in detail.accessoryVOList"
:key=
"index"
>
<a
:href=
"item.accessoryUrl"
>
{{
item
.
fileName
}}
</a>
</li>
...
...
src/main.js
View file @
4aad38f2
...
...
@@ -4,8 +4,8 @@ import router from './router';
import
ElementUI
from
'element-ui'
;
import
VueI18n
from
'vue-i18n'
;
import
{
messages
}
from
'./components/common/i18n'
;
import
'element-ui/lib/theme-chalk/index.css'
;
// 默认主题
// import './assets/css/theme-green/index.css';
// 浅绿色主题
//
import 'element-ui/lib/theme-chalk/index.css'; // 默认主题
import
'./assets/css/theme-green/index.css'
;
// 浅绿色主题
import
'./assets/css/icon.css'
;
import
'./components/common/directives'
;
import
'babel-polyfill'
;
...
...
src/pages/purchaser/bid/bidEvaluation/projectManager/content.vue
View file @
4aad38f2
...
...
@@ -3,14 +3,14 @@
<div
class=
"content"
>
<dataBreadcrumb
:breads=
"breads"
></dataBreadcrumb>
<div
class=
"message"
>
<div
class=
"flex-between
"
>
<div
class=
"flex-between
bond"
>
<div>
招标文件:
<span
@
click=
"download(bidDetail.fileUrl)"
>
{{
bidDetail
.
fileName
}}
</span></div>
<div>
开标信息:
<span
@
click=
"changeOpen"
>
开标一览表
</span></div>
</div>
<div
class=
"flex upload"
>
<div>
变更信息:
</div>
<ul
class=
"title
"
>
<li
class=
"flex"
v-for=
"(item,index) in changeList"
:key=
"index"
>
<ul
class=
"title
flex"
>
<li
v-for=
"(item,index) in changeList"
:key=
"index"
>
<router-link
:to=
"
{path: '/purchaser/bid/bidStage/changeList/see', query: {id: item.noticeId }}">
{{
item
.
title
}}
</router-link>
</li>
</ul>
...
...
@@ -362,9 +362,14 @@
</
script
>
<
style
scoped
>
.bond
span
{
cursor
:
pointer
;
}
.file
>
div
{
margin-right
:
10px
;
color
:
#113DEE
color
:
#113DEE
;
cursor
:
pointer
;
}
.message
{
...
...
@@ -382,7 +387,7 @@
}
.title
>
li
{
margin-
bottom
:
10
px
;
margin-
right
:
15
px
;
}
.upload
button
{
...
...
src/pages/purchaser/bid/bidEvaluation/review/review.vue
View file @
4aad38f2
...
...
@@ -3,14 +3,14 @@
<div
class=
"content"
>
<dataBreadcrumb
:breads=
"breads"
></dataBreadcrumb>
<div
class=
"message"
>
<div
class=
"flex-between"
>
<div
class=
"flex-between
bond
"
>
<div>
招标文件:
<span
@
click=
"down(bidDetail.fileUrl)"
>
{{
bidDetail
.
fileName
}}
</span></div>
<div>
开标信息:
<span
@
click=
"changeOpen"
>
开标一览表
</span></div>
</div>
<div
class=
"flex upload"
>
<div>
变更信息:
</div
<ul
class=
"title"
>
<li
class=
"flex"
v-for=
"(item,index) in changeList"
:key=
"index"
>
<div
class=
"flex
-item
upload"
>
<div>
变更信息:
</div
>
<ul
class=
"title
flex
"
>
<li
v-for=
"(item,index) in changeList"
:key=
"index"
>
<router-link
:to=
"
{path: '/purchaser/bid/bidStage/changeList/see', query: {id: item.noticeId }}">
{{
item
.
title
}}
</router-link>
</li>
</ul>
...
...
@@ -527,9 +527,13 @@
</
script
>
<
style
scoped
>
.file
>
li
{
.bond
span
{
cursor
:
pointer
;
}
.file
>
div
{
margin-right
:
10px
;
color
:
#113DEE
color
:
#113DEE
;
cursor
:
pointer
;
}
.message
{
...
...
@@ -547,7 +551,8 @@
}
.title
>
li
{
margin-bottom
:
10px
;
margin-right
:
15px
;
}
.upload
button
{
...
...
src/pages/purchaser/bid/bidEvaluation/review/see.vue
View file @
4aad38f2
...
...
@@ -50,7 +50,7 @@
</div>
</div>
<div
class=
"button"
>
<el-button
@
click=
"back"
>
取消
</el-button>
<el-button
@
click=
"back"
>
返回
</el-button>
</div>
</div>
</div>
...
...
src/pages/purchaser/bid/bidStage/bondList/detail.vue
View file @
4aad38f2
...
...
@@ -2,10 +2,10 @@
<div>
<div
class=
"content-head"
>
<dataBreadcrumb
:breads=
"breads"
></dataBreadcrumb>
<h3>
{{
title
}}
</h3>
<h5>
{{
title
}}
保证金缴费信息
</h5>
<h3>
{{
title
}}
</h3>
<h5>
{{
title
}}
保证金缴费信息
</h5>
<div
class=
"flex state"
>
<div>
状态:
{{
state
}}
</div>
<div>
状态:
{{
state
}}
</div>
<div></div>
</div>
</div>
...
...
@@ -21,7 +21,7 @@
</el-form-item>
</div>
<div
class=
"flex-between"
>
<el-form-item
label=
"联系人:"
>
<el-form-item
label=
"联系人:"
>
<el-input
v-model
.
trim=
"ruleForm.contacts"
disabled
maxlength=
"30"
></el-input>
</el-form-item>
<el-form-item
label=
"固定电话:"
prop=
"companyTel"
>
...
...
@@ -64,7 +64,7 @@
</div>
<div>
<el-form-item
label=
"邮寄地址:"
>
<el-input
v-model
.
trim=
"ruleForm.recipientsAddress
"
disabled
maxlength=
"30"
></el-input>
<el-input
v-model
.
trim=
"ruleForm.recipientsAddress
"
disabled
maxlength=
"30"
></el-input>
</el-form-item>
</div>
</div>
...
...
@@ -73,23 +73,18 @@
<div
class=
"describe"
>
缴费信息
</div>
<div
class=
"message-form"
>
<el-form-item
label=
"付款方式:"
prop=
"feeWay"
>
<el-input
v-model
.
trim=
"ruleForm.feeWay"
disabled
maxlength=
"30"
>
</el-input>
<el-input
v-model
.
trim=
"ruleForm.feeWay"
disabled
maxlength=
"30"
>
</el-input>
</el-form-item>
<el-form-item
label=
"备注:"
prop=
"remark"
>
<el-input
:rows=
"5"
v-model
.
trim=
"ruleForm.remark"
type=
"textarea"
disabled
maxlength=
"300"
>
</el-input>
<el-input
:rows=
"5"
v-model
.
trim=
"ruleForm.remark"
type=
"textarea"
disabled
maxlength=
"300"
>
</el-input>
</el-form-item>
<el-form-item
label=
"上传缴费凭证:"
v-if=
"ruleForm.voucherUrl
"
>
<ul
>
<li
v-for=
"(item,
index) in ruleForm.voucherList"
:key=
"index"
>
<a
:href=
"item.fileUrl"
>
{{
item
.
fileName
}}
</a>
<el-form-item
label=
"上传缴费凭证:
"
>
<ul
>
<li
v-for=
"(item,
index) in ruleForm.voucherList"
:key=
"index"
>
<a
:href=
"item.fileUrl"
>
{{
item
.
fileName
}}
</a>
</li>
</ul>
</el-form-item>
<el-form-item
label=
"上传缴费凭证:"
v-else
>
<div>
无
</div>
</el-form-item>
</div>
</div>
</div>
...
...
@@ -107,7 +102,7 @@
<el-button
type=
"primary"
@
click=
"refuse"
>
确 定
</el-button>
</div>
</el-dialog>
<div
class=
"bottomButton"
v-if=
"type==
'see'"
>
<div
class=
"bottomButton"
v-if=
"type ==
'see'"
>
<el-button
@
click=
"back"
>
返回
</el-button>
</div>
<div
class=
"bottomButton"
v-else
>
...
...
@@ -116,151 +111,140 @@
<el-button
type=
"primary"
@
click=
"adopt"
>
审核通过
</el-button>
</div>
</div>
</
template
>
<
script
>
import
{
earnestDetail
,
aduit
}
from
'@api/purchaser/bid'
import
dataBreadcrumb
from
'@components/dataBreadcrumb.vue'
import
{
earnestDetail
,
aduit
}
from
'@api/purchaser/bid'
;
import
dataBreadcrumb
from
'@components/dataBreadcrumb.vue'
;
export
default
{
export
default
{
components
:
{
dataBreadcrumb
,
dataBreadcrumb
},
data
()
{
return
{
dialogFormVisible
:
false
,
state
:
""
,
dialogFormVisible
:
false
,
state
:
''
,
breads
:
[
'招标管理'
,
'招标项目管理'
,
'工作台'
],
ruleForm
:
{},
ruleForm
:
{},
form
:
{
reason
:
""
reason
:
''
},
rules
:
{
reason
:
[{
reason
:
[
{
required
:
true
,
message
:
'请输入'
,
trigger
:
'blur'
}]
}
]
}
};
},
methods
:
{
back
()
{
this
.
$router
.
go
(
-
1
)
this
.
$router
.
go
(
-
1
);
},
async
getearnestDetail
()
{
// let message={}
// message.feeId=this.feeId
// message.projectId=localStorage.getItem("projectId")
let
feeId
=
this
.
feeId
let
feeId
=
this
.
feeId
;
try
{
const
{
data
,
code
}
=
await
earnestDetail
(
feeId
)
const
{
data
,
code
}
=
await
earnestDetail
(
feeId
);
if
(
code
==
200
)
{
this
.
ruleForm
=
data
this
.
ruleForm
=
data
;
}
}
catch
(
e
)
{
console
.
log
(
e
)
console
.
log
(
e
);
}
},
// 审核拒绝
async
refuse
()
{
try
{
const
valid
=
await
this
.
$refs
[
'form'
].
validate
()
const
valid
=
await
this
.
$refs
[
'form'
].
validate
();
if
(
valid
)
{
let
form
=
this
.
form
;
form
.
aduit
=
2
form
.
id
=
this
.
feeId
const
{
code
,
msg
}
=
await
aduit
(
form
)
form
.
aduit
=
2
;
form
.
id
=
this
.
feeId
;
const
{
code
,
msg
}
=
await
aduit
(
form
);
if
(
code
===
200
)
{
this
.
$message
({
message
:
msg
,
type
:
'success'
,
duration
:
1500
})
});
setTimeout
(()
=>
{
this
.
$router
.
go
(
-
1
)
},
1500
)
this
.
$router
.
go
(
-
1
);
},
1500
);
}
else
{
this
.
$success
.
error
(
msg
)
this
.
$success
.
error
(
msg
);
}
}
}
catch
(
e
)
{
console
.
log
(
e
)
console
.
log
(
e
);
}
},
//审核通过
async
adopt
()
{
try
{
let
form
=
{};
form
.
aduit
=
1
form
.
id
=
this
.
feeId
const
{
code
,
msg
}
=
await
aduit
(
form
)
form
.
aduit
=
1
;
form
.
id
=
this
.
feeId
;
const
{
code
,
msg
}
=
await
aduit
(
form
);
if
(
code
===
200
)
{
this
.
$message
({
message
:
msg
,
type
:
'success'
,
duration
:
1500
})
});
setTimeout
(()
=>
{
this
.
$router
.
go
(
-
1
)
},
1500
)
this
.
$router
.
go
(
-
1
);
},
1500
);
}
else
{
this
.
$success
.
error
(
msg
)
this
.
$success
.
error
(
msg
);
}
}
catch
(
e
)
{
console
.
log
(
e
)
console
.
log
(
e
);
}
}
},
created
()
{
this
.
state
=
this
.
$route
.
query
.
state
;
created
()
{
this
.
state
=
this
.
$route
.
query
.
state
;
this
.
type
=
this
.
$route
.
query
.
type
;
if
(
this
.
type
==
"examine"
)
{
this
.
title
=
"审核"
if
(
this
.
type
==
'examine'
)
{
this
.
title
=
'审核'
;
}
else
{
this
.
title
=
"查看"
this
.
title
=
'查看'
;
}
let
feeId
=
this
.
$route
.
query
.
feeId
;
this
.
feeId
=
feeId
this
.
feeId
=
feeId
;
this
.
getearnestDetail
();
}
}
};
</
script
>
<
style
scoped
>
.message
{}
.message
{
}
.message
>
div
{
.message
>
div
{
background
:
#fff
;
margin-bottom
:
20px
;
padding-bottom
:
20px
;
}
}
.message-form
{
.message-form
{
width
:
70%
;
margin
:
0
auto
}
.content-head
{
margin
:
0
auto
;
}
.content-head
{
position
:
relative
;
}
.state
{
}
.state
{
position
:
absolute
;
right
:
10px
;
bottom
:
10px
}
bottom
:
10px
;
}
</
style
>
src/pages/purchaser/bid/bidStage/tenderFeelist/detail.vue
View file @
4aad38f2
...
...
@@ -2,10 +2,10 @@
<div>
<div
class=
"content-head"
>
<dataBreadcrumb
:breads=
"breads"
></dataBreadcrumb>
<h3>
{{
title
}}
</h3>
<h5>
{{
title
}}
购标信息、邮寄信息、发票信息、缴费信息
</h5>
<h3>
{{
title
}}
</h3>
<h5>
{{
title
}}
购标信息、邮寄信息、发票信息、缴费信息
</h5>
<div
class=
"flex state"
>
<div>
状态:
{{
state
}}
</div>
<div>
状态:
{{
state
}}
</div>
<div></div>
</div>
</div>
...
...
@@ -64,10 +64,9 @@
</div>
<div>
<el-form-item
label=
"邮寄地址:"
>
<el-input
v-model=
"ruleForm.recipientsAddress
"
disabled
></el-input>
<el-input
v-model=
"ruleForm.recipientsAddress
"
disabled
></el-input>
</el-form-item>
</div>
</div>
</div>
<div>
...
...
@@ -86,7 +85,7 @@
</div>
<div
class=
"flex-between"
>
<el-form-item
label=
"纳税人识别号:"
prop=
"invoiceTaxNumber "
>
<el-input
v-model=
"ruleForm.invoiceTaxNumber
"
disabled
></el-input>
<el-input
v-model=
"ruleForm.invoiceTaxNumber
"
disabled
></el-input>
</el-form-item>
<el-form-item
label=
"地址:"
prop=
"invoiceAddress"
>
<el-input
v-model=
"ruleForm.invoiceAddress"
disabled
></el-input>
...
...
@@ -106,23 +105,18 @@
<div
class=
"describe"
>
缴费信息
</div>
<div
class=
"message-form"
>
<el-form-item
label=
"付款方式:"
prop=
"feeWay"
>
<el-input
v-model=
"ruleForm.feeWay"
disabled
>
</el-input>
<el-input
v-model=
"ruleForm.feeWay"
disabled
>
</el-input>
</el-form-item>
<el-form-item
label=
"备注:"
prop=
"remark"
>
<el-input
:rows=
"5"
v-model=
"ruleForm.remark"
type=
"textarea"
disabled
>
</el-input>
<el-input
:rows=
"5"
v-model=
"ruleForm.remark"
type=
"textarea"
disabled
>
</el-input>
</el-form-item>
<el-form-item
label=
"上传缴费凭证:"
v-if=
"ruleForm.voucherUrl"
>
<el-form-item
label=
"上传缴费凭证:"
>
<ul>
<li
v-for=
"(item,
index) in ruleForm.voucherList"
:key=
"index"
>
<a
:href=
"item.fileUrl"
>
{{
item
.
fileName
}}
</a>
<li
v-for=
"(item,
index) in ruleForm.voucherList"
:key=
"index"
>
<a
:href=
"item.fileUrl"
>
{{
item
.
fileName
}}
</a>
</li>
</ul>
</el-form-item>
<el-form-item
label=
"上传缴费凭证:"
v-if=
"ruleForm.voucherUrl"
>
<div>
无
</div>
</el-form-item>
</div>
</div>
</div>
...
...
@@ -140,7 +134,7 @@
<el-button
type=
"primary"
@
click=
"refuse"
>
确 定
</el-button>
</div>
</el-dialog>
<div
class=
"bottomButton"
v-if=
"type==
'see'"
>
<div
class=
"bottomButton"
v-if=
"type ==
'see'"
>
<el-button
@
click=
"back"
>
返回
</el-button>
</div>
<div
class=
"bottomButton"
v-else
>
...
...
@@ -149,149 +143,139 @@
<el-button
type=
"primary"
@
click=
"adopt"
>
审核通过
</el-button>
</div>
</div>
</
template
>
<
script
>
import
{
bidbookDetail
,
operationAduit
}
from
'@api/purchaser/bid'
import
dataBreadcrumb
from
'@components/dataBreadcrumb.vue'
import
{
bidbookDetail
,
operationAduit
}
from
'@api/purchaser/bid'
;
import
dataBreadcrumb
from
'@components/dataBreadcrumb.vue'
;
export
default
{
export
default
{
components
:
{
dataBreadcrumb
,
dataBreadcrumb
},
data
()
{
return
{
state
:
""
,
state
:
''
,
dialogFormVisible
:
false
,
breads
:
[
'招标管理'
,
'招标项目管理'
,
'工作台'
],
ruleForm
:
{},
form
:
{
reason
:
""
reason
:
''
},
rules
:
{
reason
:
[{
reason
:
[
{
required
:
true
,
message
:
'请输入'
,
trigger
:
'blur'
}]
}
]
}
};
},
methods
:
{
back
()
{
this
.
$router
.
go
(
-
1
)
this
.
$router
.
go
(
-
1
);
},
async
getBidbookDetail
()
{
let
message
=
{}
message
.
feeId
=
this
.
feeId
message
.
projectId
=
localStorage
.
getItem
(
"projectId"
)
let
message
=
{};
message
.
feeId
=
this
.
feeId
;
message
.
projectId
=
localStorage
.
getItem
(
'projectId'
);
try
{
const
{
data
,
code
}
=
await
bidbookDetail
(
message
)
const
{
data
,
code
}
=
await
bidbookDetail
(
message
);
if
(
code
==
200
)
{
this
.
ruleForm
=
data
this
.
ruleForm
=
data
;
}
}
catch
(
e
)
{
console
.
log
(
e
)
console
.
log
(
e
);
}
},
// 审核拒绝
async
refuse
()
{
try
{
const
valid
=
await
this
.
$refs
[
'form'
].
validate
()
const
valid
=
await
this
.
$refs
[
'form'
].
validate
();
if
(
valid
)
{
let
form
=
this
.
form
;
form
.
aduit
=
2
form
.
id
=
this
.
feeId
const
{
code
,
msg
}
=
await
operationAduit
(
form
)
form
.
aduit
=
2
;
form
.
id
=
this
.
feeId
;
const
{
code
,
msg
}
=
await
operationAduit
(
form
);
if
(
code
===
200
)
{
this
.
$message
({
message
:
msg
,
type
:
'success'
,
duration
:
1500
})
});
setTimeout
(()
=>
{
this
.
$router
.
go
(
-
1
)
},
1500
)
this
.
$router
.
go
(
-
1
);
},
1500
);
}
else
{
this
.
$success
.
error
(
msg
)
this
.
$success
.
error
(
msg
);
}
}
}
catch
(
e
)
{
console
.
log
(
e
)
console
.
log
(
e
);
}
},
//审核通过
async
adopt
()
{
try
{
let
form
=
{};
form
.
aduit
=
1
form
.
id
=
this
.
feeId
const
{
code
,
msg
}
=
await
operationAduit
(
form
)
form
.
aduit
=
1
;
form
.
id
=
this
.
feeId
;
const
{
code
,
msg
}
=
await
operationAduit
(
form
);
if
(
code
===
200
)
{
this
.
$message
({
message
:
msg
,
type
:
'success'
,
duration
:
1500
})
});
setTimeout
(()
=>
{
this
.
$router
.
go
(
-
1
)
},
1500
)
this
.
$router
.
go
(
-
1
);
},
1500
);
}
else
{
this
.
$success
.
error
(
msg
)
this
.
$success
.
error
(
msg
);
}
}
catch
(
e
)
{
console
.
log
(
e
)
console
.
log
(
e
);
}
}
},
created
()
{
this
.
state
=
this
.
$route
.
query
.
state
;
this
.
state
=
this
.
$route
.
query
.
state
;
this
.
type
=
this
.
$route
.
query
.
type
;
if
(
this
.
type
==
"examine"
)
{
this
.
title
=
"审核"
if
(
this
.
type
==
'examine'
)
{
this
.
title
=
'审核'
;
}
else
{
this
.
title
=
"查看"
this
.
title
=
'查看'
;
}
let
feeId
=
this
.
$route
.
query
.
feeId
;
this
.
feeId
=
feeId
this
.
feeId
=
feeId
;
this
.
getBidbookDetail
();
}
}
};
</
script
>
<
style
scoped
>
.message
{}
.message
{
}
.message
>
div
{
.message
>
div
{
background
:
#fff
;
margin-bottom
:
20px
;
padding-bottom
:
20px
;
}
}
.message-form
{
.message-form
{
width
:
70%
;
margin
:
0
auto
}
.content-head
{
margin
:
0
auto
;
}
.content-head
{
position
:
relative
;
}
.state
{
}
.state
{
position
:
absolute
;
right
:
10px
;
bottom
:
10px
}
bottom
:
10px
;
}
</
style
>
src/pages/purchaser/bid/bidSure/see.vue
View file @
4aad38f2
...
...
@@ -3,41 +3,43 @@
<div
class=
"content"
>
<dataBreadcrumb
:breads=
"breads"
></dataBreadcrumb>
<div
class=
"message"
>
<div
class=
"flex-between"
>
<div>
招标文件:
<span
@
click=
"download(bidDetail.fileUrl)"
>
{{
bidDetail
.
fileName
}}
</span></div>
<div
class=
"flex-between bond"
>
<div>
招标文件:
<span
@
click=
"download(bidDetail.fileUrl)"
>
{{
bidDetail
.
fileName
}}
</span>
</div>
<div>
开标信息:
<span
@
click=
"changeOpen"
>
开标一览表
</span></div>
</div>
<div
class=
"flex upload"
>
<div>
变更信息:
</div>
<ul
class=
"title"
>
<li
class=
"flex"
>
<div>
公告标题.pdf
</div>
<button>
下载
</button>
</li>
<li
class=
"flex"
>
<div>
公告标题.pdf
</div>
<button>
下载
</button>
<ul
class=
"title flex"
>
<li
v-for=
"(item, index) in changeList"
:key=
"index"
>
<router-link
:to=
"
{ path: '/purchaser/bid/bidStage/changeList/see', query: { id: item.noticeId } }">
{{
item
.
title
}}
</router-link>
</li>
</ul>
</div>
<!-- 投标文件 -->
<div>
<div>
投标文件:
</div>
<dataTable
:table-data=
"bids"
:columns=
"bidTitle"
:is-pageobj=
"fals
e"
:is-index=
"true"
>
<dataTable
:table-data=
"bids"
:columns=
"bidTitl
e"
:is-index=
"true"
>
<el-table-column
slot=
"operate"
label=
"文件"
align=
"center"
fixed=
"right"
>
<template
slot-scope=
"scope"
>
<ul
class=
"flex file"
>
<li
v-for=
"(file,index) in scope.row.files"
:key=
"index"
>
{{
file
}}
下载
</li>
</ul>
<div
class=
"flex file"
>
<div
@
click=
"down(scope.row.fileUrl)"
>
{{
scope
.
row
.
fileName
}}
</div>
<div
v-for=
"(file, index) in scope.row.fileList"
:key=
"index"
@
click=
"down(file.fileUrl)"
>
{{
file
.
fileName
}}
</div>
</div>
</
template
>
</el-table-column>
</dataTable>
</div>
<!-- 评审信息 -->
<div
style=
"margin-top:
100px"
>
<div
style=
"margin-top:
100px"
>
<div
class=
"flex-between"
>
<h5>
评审信息
</h5>
<el-button
type=
"primary"
size=
"small"
@
click=
'jump'
>
澄清质询查看
</el-button>
<el-button
type=
"primary"
size=
"small"
@
click=
"jump"
>
澄清质询查看
</el-button>
</div>
<dataTable
:table-data=
"review"
:columns=
"reviewTitle"
:is-index=
"true"
>
<el-table-column
slot=
"operate"
label=
"资格审查"
align=
"center"
fixed=
"right"
>
...
...
@@ -52,7 +54,7 @@
<div
v-else
>
未通过
</div>
</
template
>
</el-table-column>
<el-table-column
slot=
"operate"
label=
"
"
align=
"center"
fixed=
"right"
>
<el-table-column
slot=
"operate"
label=
"手动废标
"
align=
"center"
fixed=
"right"
>
<
template
slot-scope=
"scope"
>
<div
v-if=
"scope.row.bidRejection"
>
通过
</div>
<div
v-else
>
未通过
</div>
...
...
@@ -69,8 +71,7 @@
<!-- 排名信息 -->
<div>
<h5>
排名信息
</h5>
<dataTable
:table-data=
"rank"
:columns=
"rankTitle"
:is-pageobj=
"false"
:is-index=
"true"
>
</dataTable>
<dataTable
:table-data=
"rank"
:columns=
"rankTitle"
:is-pageobj=
"false"
:is-index=
"true"
>
</dataTable>
</div>
<div
class=
"flex"
>
<div>
评标附件:
</div>
...
...
@@ -89,25 +90,23 @@
</div>
<!-- 开标一览表 -->
<el-dialog
title=
"开标一览表"
:visible
.
sync=
"isOpenInfo"
>
<dataTable
:tableData=
"tableData"
:columns=
"nopagecolumns"
:margin-top=
"0"
:margin-bottom=
"0"
>
</dataTable>
<dataTable
:tableData=
"tableData"
:columns=
"nopagecolumns"
:margin-top=
"0"
:margin-bottom=
"0"
>
</dataTable>
<div
slot=
"footer"
class=
"dialog-footer"
>
<el-button
@
click=
"isOpenInfo = false"
>
取 消
</el-button>
</div>
</el-dialog>
</div>
<div
class=
"bottomButton"
>
<el-button
@
click=
"back"
>
返回
</el-button>
<el-button
type=
"primary"
v-if=
"ruleForm.auditStatus == 2"
@
click=
"submitData"
>
提交
</el-button>
</div>
</div>
</template>
<
script
>
import
{
companyRank
,
CompanyEvaluatec
,
bidBookDownload
,
openInfo
}
from
'@api/purchaser/bid'
import
dataTable
from
'@components/nopageTable.vue'
import
dataBreadcrumb
from
'@components/dataBreadcrumb.vue'
import
{
companyRank
,
CompanyEvaluatec
,
bidBookDownload
,
openInfo
,
accessorydownload
,
bidFilelist
,
changeNoticelist
}
from
'@api/purchaser/bid'
;
import
dataTable
from
'@components/nopageTable.vue'
;
import
dataBreadcrumb
from
'@components/dataBreadcrumb.vue'
;
export
default
{
components
:
{
dataTable
,
...
...
@@ -115,9 +114,10 @@ export default {
},
data
()
{
return
{
isOpenInfo
:
false
,
tableData
:[],
nopagecolumns
:
[{
isOpenInfo
:
false
,
tableData
:
[],
nopagecolumns
:
[
{
label
:
'投标人名称'
,
prop
:
'companyName'
},
...
...
@@ -127,12 +127,13 @@ export default {
},
{
label
:
'是否签名'
,
prop
:
'isSign'
,
},
prop
:
'isSign'
}
],
//
bidDetail
:
""
,
projectId
:
2
,
rankTitle
:
[{
bidDetail
:
''
,
projectId
:
2
,
rankTitle
:
[
{
label
:
'投标人名称'
,
prop
:
'companyName'
},
...
...
@@ -169,7 +170,8 @@ export default {
}
],
rank
:
[],
bidTitle
:
[{
bidTitle
:
[
{
label
:
'投标人'
,
prop
:
'name'
},
...
...
@@ -177,158 +179,195 @@ export default {
slot
:
'operate'
}
],
bids
:
[{
bids
:
[
{
name
:
'上海致远有限公司'
,
files
:
[
'313121.zip'
,
'546465.zip'
]
}],
}
],
breads
:
[
'招标管理'
,
'招标项目管理'
,
'工作台'
],
review
:
[],
reviewTitle
:
[{
reviewTitle
:
[
{
label
:
'投标人名称'
,
prop
:
'companyName'
},
{
slot
:
'operate'
}
],
// 操作列
}
]
// 操作列
};
},
created
()
{
this
.
getcompanyRank
()
this
.
getCompanyEvaluatec
()
this
.
getcompanyRank
();
this
.
getCompanyEvaluatec
();
this
.
getbidBookDownload
();
},
methods
:
{
changeOpen
(){
this
.
isOpenInfo
=
true
;
this
.
getopenInfo
()
;
back
()
{
this
.
$router
.
go
(
-
1
);
},
changeOpen
()
{
this
.
isOpenInfo
=
true
;
this
.
getopenInfo
();
},
// 开标一览表
async
getopenInfo
()
{
try
{
let
projectId
=
localStorage
.
getItem
(
"projectId"
)
const
{
data
,
code
}
=
await
openInfo
(
projectId
)
let
projectId
=
localStorage
.
getItem
(
'projectId'
);
const
{
data
,
code
}
=
await
openInfo
(
projectId
);
if
(
code
==
200
)
{
for
(
let
item
of
data
)
{
if
(
item
.
isSign
)
{
item
.
isSign
=
"是"
item
.
isSign
=
'是'
;
}
else
{
item
.
isSign
=
"否"
item
.
isSign
=
'否'
;
}
}
this
.
tableData
=
data
this
.
tableData
=
data
;
}
}
catch
(
e
)
{
console
.
log
(
e
)
console
.
log
(
e
);
}
},
download
(
url
){
window
.
open
(
url
)
download
(
url
)
{
window
.
open
(
url
);
},
back
()
{
this
.
$router
.
go
(
-
1
);
},
back
()
{
this
.
$router
.
go
(
-
1
)
jump
()
{
this
.
$router
.
push
(
'/purchaser/bid/bidEvaluation/review/clear'
);
},
jump
(){
this
.
$router
.
push
(
'/purchaser/bid/bidEvaluation/review/clear'
)
compare
(
property
)
{
return
function
(
a
,
b
)
{
var
value1
=
a
[
property
];
var
value2
=
b
[
property
];
return
value2
-
value1
;
};
},
examine
()
{
this
.
$router
.
push
(
'/admin/bid/bidingDetail'
)
this
.
$router
.
push
(
'/admin/bid/bidingDetail'
);
},
fail
()
{
this
.
$router
.
push
(
'/purchaser/bid/bidEvaluation/projectManager/fail'
)
this
.
$router
.
push
(
'/purchaser/bid/bidEvaluation/projectManager/fail'
);
},
// 查投标公司评审信息
async
getCompanyEvaluatec
()
{
try
{
let
projectId
=
localStorage
.
getItem
(
"projectId"
);
const
{
data
,
code
}
=
await
CompanyEvaluatec
(
projectId
)
let
projectId
=
localStorage
.
getItem
(
'projectId'
);
const
{
data
,
code
}
=
await
CompanyEvaluatec
(
projectId
);
if
(
code
===
200
)
{
this
.
review
=
data
this
.
review
=
data
;
}
}
catch
(
e
)
{
console
.
log
(
e
)
console
.
log
(
e
);
}
},
// 查看投标公司排名信息
async
getcompanyRank
()
{
try
{
let
projectId
=
localStorage
.
getItem
(
"projectId"
);
const
{
data
,
code
}
=
await
companyRank
(
projectId
)
let
projectId
=
localStorage
.
getItem
(
'projectId'
);
const
{
data
,
code
}
=
await
companyRank
(
projectId
);
if
(
code
===
200
)
{
this
.
rank
=
data
this
.
rank
=
data
;
}
}
catch
(
e
)
{
console
.
log
(
e
)
console
.
log
(
e
);
}
},
// 查看招标文件
async
getbidBookDownload
()
{
try
{
let
projectId
=
localStorage
.
getItem
(
"projectId"
)
let
projectId
=
localStorage
.
getItem
(
'projectId'
);
const
{
data
,
code
}
=
await
bidBookDownload
(
projectId
);
if
(
code
===
200
)
{
this
.
bidDetail
=
data
;
}
}
catch
(
e
)
{
console
.
log
(
e
);
}
},
// 查看评标附件
async
getaccessorydownload
()
{
let
projectId
=
localStorage
.
getItem
(
"projectId"
);
const
{
data
,
code
}
=
await
bidBookD
ownload
(
projectId
)
}
=
await
accessoryd
ownload
(
projectId
)
if
(
code
===
200
)
{
this
.
bidDetail
=
data
this
.
downloadList
=
data
}
}
catch
(
e
)
{
console
.
log
(
e
)
},
// 查看投标文件
async
getbidFilelist
()
{
let
projectId
=
localStorage
.
getItem
(
"projectId"
);
const
{
data
,
code
}
=
await
bidFilelist
(
projectId
)
if
(
code
===
200
)
{
this
.
bids
=
data
}
},
// 查看变更信息
async
getchangeNoticelist
()
{
let
projectId
=
localStorage
.
getItem
(
"projectId"
);
const
{
data
,
code
}
=
await
changeNoticelist
(
projectId
)
if
(
code
===
200
)
{
this
.
changeList
=
data
;
}
},
//
}
}
}
;
</
script
>
<
style
scoped
>
.file
>
li
{
.bond
span
{
cursor
:
pointer
;
}
.file
>
div
{
margin-right
:
10px
;
color
:
#113DEE
color
:
#113DEE
;
cursor
:
pointer
;
}
.message
{
.message
{
margin-left
:
50px
;
margin-bottom
:
50px
;
}
}
.message
span
{
color
:
#113DEE
}
.message
span
{
color
:
#113dee
;
}
.message
>
div
{
.message
>
div
{
margin-bottom
:
15px
;
}
}
.title
>
li
{
margin-bottom
:
10
px
;
}
.title
>
li
{
margin-right
:
15
px
;
}
.upload
button
{
.upload
button
{
border
:
1px
solid
#000000
;
background
:
#fff
;
width
:
50px
;
height
:
20px
;
margin-left
:
10px
;
}
h5
{
}
h5
{
font-weight
:
bold
;
margin-bottom
:
20px
;
}
.button
{
width
:
280px
;
margin
:
80px
auto
30px
}
}
.button
{
width
:
280px
;
margin
:
80px
auto
30px
;
}
</
style
>
src/pages/purchaser/bid/bidSure/winBid/list.vue
View file @
4aad38f2
...
...
@@ -18,7 +18,7 @@
</dataTable>
<div
class=
"button flex-center"
>
<el-button
@
click=
"back"
>
返回
</el-button>
<el-button
type=
"primary"
@
click=
"submitData"
>
提交
审核
</el-button>
<el-button
type=
"primary"
@
click=
"submitData"
>
提交
</el-button>
</div>
</div>
</div>
...
...
src/pages/supply/bid/joinProject/bidStage/bond/detail.vue
View file @
4aad38f2
...
...
@@ -197,12 +197,11 @@ export default {
}
else
{
this
.
state
=
'未审核'
;
}
// for(let item of data.voucherList)
{
// item.name=item.fileName
// item.url=item.fileUrl
//
}
for
(
let
item
of
data
.
voucherList
)
{
item
.
name
=
item
.
fileName
;
item
.
url
=
item
.
fileUrl
;
}
this
.
ruleForm
=
data
;
// this.ruleForm.companyName = JSON.parse(localStorage.getItem("userInfo")).companyName
}
}
catch
(
e
)
{
console
.
log
(
e
);
...
...
src/pages/supply/bid/joinProject/bidStage/changeList/see.vue
View file @
4aad38f2
...
...
@@ -56,7 +56,8 @@ export default {
}
},
created
()
{
this
.
changeDetail
(
1
)
let
id
=
this
.
$route
.
query
.
id
this
.
changeDetail
(
id
)
},
methods
:
{
down
(
url
){
...
...
src/pages/supply/bid/joinProject/bidStage/fileDownload.vue
View file @
4aad38f2
...
...
@@ -42,7 +42,7 @@
data
()
{
return
{
bidFileEndTime
:
""
,
navs
:
[
'
标书费缴纳管理
'
],
navs
:
[
'
招标文件下载
'
],
files
:
[],
breads
:
[
'投标管理'
,
'我参与的项目'
,
'工作台'
],
columns
:
[{
...
...
src/pages/supply/bid/joinProject/bidStage/tenderFee/detail.vue
View file @
4aad38f2
...
...
@@ -229,10 +229,10 @@ export default {
}
else
{
this
.
state
=
'未审核'
;
}
// for(let item of data.voucherList)
{
// item.name=item.fileName
// item.url=item.fileUrl
//
}
for
(
let
item
of
data
.
voucherList
)
{
item
.
name
=
item
.
fileName
;
item
.
url
=
item
.
fileUrl
;
}
this
.
ruleForm
=
data
;
}
}
catch
(
e
)
{
...
...
src/pages/supply/bid/signupOnline/seePrice.vue
View file @
4aad38f2
...
...
@@ -18,7 +18,7 @@
<!-- 报价弹窗 -->
<el-dialog
:visible
.
sync=
"dialogFormVisible"
title=
"报价"
width=
"50%"
>
<dataTable
:table-data=
"commoditylist"
:columns=
"commoditycolumns"
>
<el-table-column
slot=
"operate"
label=
"
操作
"
align=
"center"
fixed=
"right"
width=
"150"
>
<el-table-column
slot=
"operate"
label=
"
报价
"
align=
"center"
fixed=
"right"
width=
"150"
>
<template
slot-scope=
"scope"
>
<el-input-number
v-model=
"scope.row.cost"
...
...
@@ -148,7 +148,7 @@ export default {
prop
:
'remark'
},
{
label
:
'
价格
'
,
label
:
'
报价
'
,
prop
:
'offerPrice'
},
]
...
...
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