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
f1134b55
Commit
f1134b55
authored
Nov 02, 2020
by
吴冠
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
更改
parent
9fc8c2a6
Show whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
204 additions
and
83 deletions
+204
-83
bid.js
src/api/purchaser/bid.js
+7
-0
bid.js
src/api/supply/bid.js
+1
-1
winNotice.vue
src/components/detail/winNotice.vue
+3
-1
add.vue
src/pages/purchaser/bid/bidEvaluation/review/add.vue
+1
-1
contract.vue
src/pages/purchaser/bid/bidSure/contract.vue
+20
-1
reply.vue
src/pages/supply/bid/joinProject/bidEvaluation/reply.vue
+8
-0
bidOpenhal.vue
src/pages/supply/bid/joinProject/bidOpen/bidOpenhal.vue
+86
-37
bond.vue
src/pages/supply/bid/joinProject/bidStage/bond/bond.vue
+0
-2
see.vue
...s/supply/bid/joinProject/bidStage/clearManagement/see.vue
+5
-4
detail.vue
...ages/supply/bid/joinProject/bidStage/tenderFee/detail.vue
+1
-1
contractManagement.vue
...ges/supply/bid/joinProject/bidSure/contractManagement.vue
+72
-35
No files found.
src/api/purchaser/bid.js
View file @
f1134b55
...
@@ -645,4 +645,11 @@ export function projectConsole(params) {
...
@@ -645,4 +645,11 @@ export function projectConsole(params) {
})
})
}
}
//采购商详情
export
function
contractDetails
(
projectId
)
{
return
request
({
url
:
`/tender-decide/contract/detail/
${
projectId
}
`
,
method
:
'get'
,
})
}
src/api/supply/bid.js
View file @
f1134b55
...
@@ -283,7 +283,7 @@ export function bidResultBook(params) {
...
@@ -283,7 +283,7 @@ export function bidResultBook(params) {
// 查看合同
// 查看合同
export
function
contractdetail
(
projectId
)
{
export
function
contractdetail
(
projectId
)
{
return
request
({
return
request
({
url
:
`
bid
der-decide/contract/detail/
${
projectId
}
`
,
url
:
`
ten
der-decide/contract/detail/
${
projectId
}
`
,
method
:
'get'
,
method
:
'get'
,
})
})
}
}
...
...
src/components/detail/winNotice.vue
View file @
f1134b55
...
@@ -40,7 +40,8 @@ export default {
...
@@ -40,7 +40,8 @@ export default {
projectCode
:
''
,
projectCode
:
''
,
projectName
:
''
,
projectName
:
''
,
state
:
true
,
state
:
true
,
detail
:
''
detail
:
''
,
title
:
''
};
};
},
},
methods
:
{
methods
:
{
...
@@ -54,6 +55,7 @@ export default {
...
@@ -54,6 +55,7 @@ export default {
if
(
code
==
200
)
{
if
(
code
==
200
)
{
console
.
log
(
data
);
console
.
log
(
data
);
this
.
detail
=
data
;
this
.
detail
=
data
;
this
.
title
=
data
.
title
}
else
{
}
else
{
this
.
state
=
false
;
this
.
state
=
false
;
}
}
...
...
src/pages/purchaser/bid/bidEvaluation/review/add.vue
View file @
f1134b55
...
@@ -24,7 +24,7 @@
...
@@ -24,7 +24,7 @@
</el-date-picker>
</el-date-picker>
</el-form-item>
</el-form-item>
<el-form-item
label=
"选择投标人"
prop=
"CompanyId"
>
<el-form-item
label=
"选择投标人"
prop=
"CompanyId"
>
<el-radio
v-model=
"ruleForm.CompanyId"
v-for=
"
(item,index)
in CompanyIds"
:label=
"item.companyId"
:key=
"item.companyId"
>
{{
item
.
companyName
}}
</el-radio>
<el-radio
v-model=
"ruleForm.CompanyId"
v-for=
"
item
in CompanyIds"
:label=
"item.companyId"
:key=
"item.companyId"
>
{{
item
.
companyName
}}
</el-radio>
</el-form-item>
</el-form-item>
<el-form-item
label=
"澄清质询问题内容"
prop=
"content"
>
<el-form-item
label=
"澄清质询问题内容"
prop=
"content"
>
<el-input
v-model
.
trim=
"ruleForm.content"
:rows=
"2"
type=
"textarea"
maxlength=
"300"
></el-input>
<el-input
v-model
.
trim=
"ruleForm.content"
:rows=
"2"
type=
"textarea"
maxlength=
"300"
></el-input>
...
...
src/pages/purchaser/bid/bidSure/contract.vue
View file @
f1134b55
...
@@ -74,7 +74,8 @@
...
@@ -74,7 +74,8 @@
<
script
>
<
script
>
import
{
import
{
contract
contract
,
contractDetails
}
from
'@api/purchaser/bid'
}
from
'@api/purchaser/bid'
import
dataBreadcrumb
from
'@components/dataBreadcrumb.vue'
import
dataBreadcrumb
from
'@components/dataBreadcrumb.vue'
import
changeNav
from
'@components/changeNav.vue'
import
changeNav
from
'@components/changeNav.vue'
...
@@ -167,9 +168,27 @@
...
@@ -167,9 +168,27 @@
}
catch
(
e
)
{
}
catch
(
e
)
{
console
.
log
(
e
)
console
.
log
(
e
)
}
}
},
async
contractDetails
(){
const
{
data
,
code
}
=
await
contractDetails
()
if
(
code
==
200
){
this
.
ruleForm
=
data
for
(
let
item
in
data
.
contractFileName
){
this
.
ruleForm
.
contractName
=
item
}
for
(
let
item1
in
data
.
fileList
){
this
.
ruleForm
.
fileList
=
item1
}
}
}
}
},
},
created
()
{
created
()
{
let
type
=
this
.
$router
.
query
.
type
/* type为1 查看详情*/
if
(
type
==
'2'
){
this
.
contractDetails
()
}
this
.
projectCode
=
localStorage
.
getItem
(
"projectCode"
);
this
.
projectCode
=
localStorage
.
getItem
(
"projectCode"
);
this
.
projectName
=
localStorage
.
getItem
(
"projectName"
);
this
.
projectName
=
localStorage
.
getItem
(
"projectName"
);
}
}
...
...
src/pages/supply/bid/joinProject/bidEvaluation/reply.vue
View file @
f1134b55
...
@@ -12,6 +12,14 @@
...
@@ -12,6 +12,14 @@
<div>
澄清问题标题:
</div>
<div>
澄清问题标题:
</div>
<div>
{{
detail
.
title
}}
</div>
<div>
{{
detail
.
title
}}
</div>
</div>
</div>
<div
class=
"flex clear-item"
>
<div>
问题发布时间:
</div>
<div>
{{
detail
.
startTime
}}
</div>
</div>
<div
class=
"flex clear-item"
>
<div>
澄清回复截止时间:
</div>
<div>
{{
detail
.
endTime
}}
</div>
</div>
<div
class=
"flex clear-item"
>
<div
class=
"flex clear-item"
>
<div>
澄清问题内容:
</div>
<div>
澄清问题内容:
</div>
<div
v-html=
"detail.content"
></div>
<div
v-html=
"detail.content"
></div>
...
...
src/pages/supply/bid/joinProject/bidOpen/bidOpenhal.vue
View file @
f1134b55
...
@@ -2,34 +2,47 @@
...
@@ -2,34 +2,47 @@
<div>
<div>
<div
class=
"content"
>
<div
class=
"content"
>
<dataBreadcrumb
:breads=
"breads"
></dataBreadcrumb>
<dataBreadcrumb
:breads=
"breads"
></dataBreadcrumb>
<
div>
中国标准时间:
{{
currentTime
}}
</div
>
<
!--
<div>
中国标准时间:
{{
currentTime
}}
</div>
--
>
<div
class=
"hal"
>
<div
class=
"hal"
>
<h
2
style=
"text-align: center"
>
{{
projectName
}}
项目开标大厅
</h2
>
<h
3
style=
"text-align: center"
>
{{
projectName
}}
项目开标大厅
</h3
>
<div
class=
"time-message flex-
between
"
>
<div
class=
"time-message flex-
center"
style=
"border-top:1px solid #bfa;width:100%;margin-top:10px;margin-bottom:10px;
"
>
<div
class=
"flex"
>
<div
class=
"flex"
style=
"margin-left:0px;margin-top:10px"
>
<p>
截标倒计时:
</p>
<p>
截标倒计时:
</p>
<timeDown
:remain-time=
"remaintime"
@
countDowmEnd=
"remaintimeEnd"
></timeDown>
<timeDown
:remain-time=
"remaintime"
@
countDowmEnd=
"remaintimeEnd"
></timeDown>
</div>
</div>
<div
class=
"flex"
v-show=
"openStatus == 2
"
>
<div
class=
"flex"
style=
"margin-left:40px;margin-top:10px
"
>
<p>
解密倒计时:
</p>
<p>
解密倒计时:
</p>
<timeDown
:remain-time=
"decodeTime"
@
countDowmEnd=
"decodeTimeEnd"
></timeDown>
<timeDown
:remain-time=
"decodeTime"
@
countDowmEnd=
"decodeTimeEnd"
></timeDown>
</div>
</div>
<div
class=
"flex"
v-show=
"openStatus == 2
"
>
<div
class=
"flex"
style=
"margin-left:40px;margin-top:10px
"
>
<p>
签名倒计时:
</p>
<p>
签名倒计时:
</p>
<timeDown
:remain-time=
"signatureTime"
@
countDowmEnd=
"signatureTimeEnd"
></timeDown>
<timeDown
:remain-time=
"signatureTime"
@
countDowmEnd=
"signatureTimeEnd"
></timeDown>
</div>
</div>
</div>
</div>
<div
class=
"flex"
>
<div
class=
"flex"
>
<div
class=
"hal-left"
>
<div
class=
"hal-left"
>
<div>
<div
class=
"hal-item"
>
<h1>
签到
{{
!
leftmessage
.
signIn
?
'否'
:
'是'
}}
</h1>
<div
class=
"flex"
>
<h1>
解密
{{
!
leftmessage
.
decode
?
'否'
:
'是'
}}
</h1>
<div
style=
"font-weight:bold"
>
签到
</div>
<h1>
签名
{{
!
leftmessage
.
signature
?
'否'
:
'是'
}}
</h1>
<div
style=
"color:blue;font-size:20px;margin-left:10px;margin-right:10px"
>
1
</div>
<div
style=
"font-weight:bold"
>
人
</div>
</div>
<div
class=
"flex"
>
<div
style=
"font-weight:bold"
>
解密
</div>
<div
style=
"color:blue;font-size:20px;margin-left:10px;margin-right:10px"
>
1
</div>
<div
style=
"font-weight:bold"
>
人
</div>
</div>
<div
class=
"flex"
>
<div
style=
"font-weight:bold"
>
签名
</div>
<div
style=
"color:blue;font-size:20px;margin-left:10px;margin-right:10px"
>
1
</div>
<div
style=
"font-weight:bold"
>
人
</div>
</div>
<div
class=
"texta"
>
签到解密签名情况
</div>
</div>
</div>
</div>
</div>
<div
class=
"hal-center"
v-chat-scroll
>
<div
class=
"hal-center"
v-chat-scroll
>
<ul>
<ul>
<li
v-for=
"(item, index) in halList"
:key=
"index"
class=
"flex-item"
>
<li
v-for=
"(item, index) in halList"
:key=
"index"
class=
"flex-item
sty
"
>
<div>
{{
item
.
time
}}
</div>
<div>
{{
item
.
time
}}
</div>
<div>
{{
item
.
role
}}
</div>
<div>
{{
item
.
role
}}
</div>
<div>
{{
item
.
name
}}
</div>
<div>
{{
item
.
name
}}
</div>
...
@@ -38,8 +51,11 @@
...
@@ -38,8 +51,11 @@
</ul>
</ul>
</div>
</div>
<div
class=
"hal-right"
>
<div
class=
"hal-right"
>
<el-button
@
click=
"dialogFormVisible = true"
style=
"margin-left: 10px"
>
开标规则说明
</el-button>
<!--
<el-button
@
click=
"dialogFormVisible = true"
style=
"margin-left: 10px"
>
开标规则说明
</el-button>
-->
<el-button
@
click=
"isdialogue"
>
在线对话
<i
class=
"el-icon-chat-dot-round"
></i></el-button>
<div
@
click=
"isdialogue"
style=
"margin-top:0px"
>
在线对话
<i
class=
"el-icon-chat-dot-round"
></i></div>
<div
icon=
"el-icon-refresh"
@
click=
"refrsh"
>
刷新
</div>
<div
>
下发开标一览表
</div>
<div
@
click=
"openInfo"
:disabled=
"!issueTable"
>
查看开标一览表
</div>
<el-button
<el-button
:disabled=
"!isDecode"
:disabled=
"!isDecode"
v-show=
"openStatus == 2 && !leftmessage.decode"
v-show=
"openStatus == 2 && !leftmessage.decode"
...
@@ -73,9 +89,8 @@
...
@@ -73,9 +89,8 @@
</div>
</div>
<div
class=
"flex-center buttons"
>
<div
class=
"flex-center buttons"
>
<div>
<div>
<el-button
icon=
"el-icon-refresh"
@
click=
"refrsh"
>
刷新
</el-button>
<el-button
@
click=
"openInfo"
:disabled=
"!issueTable"
>
查看开标一览表
</el-button>
<el-button
@
click=
"back"
>
退出大厅
<i
class=
"el-icon-right"
></i></el-button>
<el-button
@
click=
"back"
>
退出大厅
<i
class=
"el-icon-right"
></i></el-button>
<el-button
type=
"primary"
>
立即开标
</el-button>
</div>
</div>
</div>
</div>
</div>
</div>
...
@@ -85,14 +100,14 @@
...
@@ -85,14 +100,14 @@
<div
class=
"explain"
>
<div
class=
"explain"
>
<h1>
开标说明
</h1>
<h1>
开标说明
</h1>
<div>
1、网上开标共有解密、签名两个环节,投标人根据开标大厅中间滚动提示进行相应操作。
</div>
<div>
1、网上开标共有解密、签名两个环节,投标人根据开标大厅中间滚动提示进行相应操作。
</div>
<div>
2、截标前当天大厅开放,已上传投标文件的投标人可在解密倒计时结東前进入开标大厅。
</div>
<div>
2、截标前当天大厅开放,已上传投标文件的投标人可在解密倒计时结東前进入开标大厅。
</div>
<div>
3、截标后主持人宣布开标,所有投标人进行解密操作,解密时间共计30分钟投标人须在解密倒计时结束前
<div>
3、截标后主持人宣布开标,所有投标人进行解密操作,解密时间共计30分钟投标人须在解密倒计时结束前
完成解密。解密倒计时结東后,因投标人原因造成投标文件未解密的根据《电子招标投标办法其投标文件》视
完成解密。解密倒计时结東后,因投标人原因造成投标文件未解密的根据《电子招标投标办法其投标文件》视
为撤销。
</div>
为撤销。
</div>
<div>
4、解密倒计时结東或所有投标文件均已解密,投标人可查询所有投标人的开标情况并进行签名,签名时间
<div>
4、解密倒计时结東或所有投标文件均已解密,投标人可查询所有投标人的开标情况并进行签名,签名时间
共计10分钟。
</div>
共计10分钟。
</div>
<div>
5.、所有投标人完成签名操作或签名倒计时结束后,项目经理开标结束,投标人可离开开标大厅。开标过程
<div>
5.、所有投标人完成签名操作或签名倒计时结束后,项目经理开标结束,投标人可离开开标大厅。开标过程
中,投标人可点击开标大厅右上角在线聊天与主持人沟通。开标结束后视为开标过程无异议。
</div>
中,投标人可点击开标大厅右上角在线聊天与主持人沟通。开标结束后视为开标过程无异议。
</div>
</div>
</div>
<div
class=
"flex-center"
>
<div
class=
"flex-center"
>
<el-button
type=
"primary"
@
click=
"dialogFormVisible = false"
>
关闭
</el-button>
<el-button
type=
"primary"
@
click=
"dialogFormVisible = false"
>
关闭
</el-button>
...
@@ -213,7 +228,7 @@ export default {
...
@@ -213,7 +228,7 @@ export default {
],
],
minutes
:
'6'
,
minutes
:
'6'
,
seconds
:
'60'
,
seconds
:
'60'
,
currentTime
:
''
,
/* currentTime: '', */
breads
:
[
'招标管理'
,
'招标项目管理'
,
'工作台'
],
breads
:
[
'招标管理'
,
'招标项目管理'
,
'工作台'
],
leftmessage
:
''
,
leftmessage
:
''
,
websocket
:
''
,
websocket
:
''
,
...
@@ -228,12 +243,12 @@ export default {
...
@@ -228,12 +243,12 @@ export default {
},
},
created
()
{
created
()
{
// 中国标准时间
// 中国标准时间
let
currentTime
=
getTime
();
/*
let currentTime = getTime();
this.currentTime = currentTime;
this.currentTime = currentTime;
this.timer1 = setInterval(() => {
this.timer1 = setInterval(() => {
let currentTime = getTime();
let currentTime = getTime();
this.currentTime = currentTime;
this.currentTime = currentTime;
},
1000
);
}, 1000);
*/
this
.
projectName
=
localStorage
.
getItem
(
'projectName'
);
this
.
projectName
=
localStorage
.
getItem
(
'projectName'
);
this
.
getsigndetail
();
this
.
getsigndetail
();
this
.
openBidsign
();
this
.
openBidsign
();
...
@@ -393,9 +408,9 @@ export default {
...
@@ -393,9 +408,9 @@ export default {
type
:
'error'
,
type
:
'error'
,
duration
:
3000
duration
:
3000
})
})
setTimeout
(()
=>
{
/*
setTimeout(() => {
this.$router.go(-1)
this.$router.go(-1)
},
3000
)
}, 3000)
*/
}
}
var
{
data
,
code
}
=
await
signdetail
(
projectId
);
var
{
data
,
code
}
=
await
signdetail
(
projectId
);
if
(
code
==
200
)
{
if
(
code
==
200
)
{
...
@@ -461,6 +476,9 @@ export default {
...
@@ -461,6 +476,9 @@ export default {
</
script
>
</
script
>
<
style
scoped
>
<
style
scoped
>
.content
{
background
:
#bfa
;
}
.abs
{
.abs
{
position
:
absolute
;
position
:
absolute
;
right
:
100px
;
right
:
100px
;
...
@@ -482,8 +500,8 @@ export default {
...
@@ -482,8 +500,8 @@ export default {
.dialogue
{
.dialogue
{
position
:
absolute
;
position
:
absolute
;
top
:
10%
;
top
:
0
;
right
:
10
%
;
right
:
25
%
;
border
:
1px
solid
#cccccc
;
border
:
1px
solid
#cccccc
;
padding
:
10px
;
padding
:
10px
;
}
}
...
@@ -511,24 +529,36 @@ export default {
...
@@ -511,24 +529,36 @@ export default {
}
}
.hal-left
{
.hal-left
{
width
:
200px
;
width
:
150px
;
height
:
200px
;
background
:
white
;
}
}
.hal-left
>
div
{
.hal-left
>
div
{
width
:
100%
;
width
:
100%
;
height
:
3
00px
;
height
:
2
00px
;
border
:
1px
solid
#000
;
border
:
1px
solid
#000
;
box-sizing
:
border-box
;
box-sizing
:
border-box
;
padding
:
40px
20px
;
text-align
:
center
;
margin
:
0
auto
;
}
}
.hal-right
{
.hal-right
{
width
:
200px
;
width
:
150px
;
height
:
500px
;
height
:
200px
;
/* background: white; */
}
}
.hal-right
>
button
{
.hal-right
>
div
{
margin-bottom
:
20px
;
width
:
150px
;
margin-top
:
20px
;
height
:
40px
;
text-align
:
center
;
border
:
2px
solid
blue
;
font-size
:
12px
;
line-height
:
40px
;
cursor
:
pointer
;
}
}
.hal-center
{
.hal-center
{
...
@@ -564,6 +594,10 @@ export default {
...
@@ -564,6 +594,10 @@ export default {
margin-bottom
:
50px
;
margin-bottom
:
50px
;
/* letter-spacing:5px */
/* letter-spacing:5px */
}
}
.hal-item
>
div
{
margin-left
:
32px
;
margin-top
:
20px
;
}
.bid-message
{
.bid-message
{
flex-wrap
:
wrap
;
flex-wrap
:
wrap
;
...
@@ -574,4 +608,19 @@ export default {
...
@@ -574,4 +608,19 @@ export default {
margin-right
:
50px
;
margin-right
:
50px
;
margin-bottom
:
30px
;
margin-bottom
:
30px
;
}
}
.texta
{
font-size
:
10px
;
margin-left
:
-20px
;
}
.hal-item
>
div
:last-child
{
margin-left
:
0
}
.sty
{
line-height
:
20.8px
;
display
:
flex
;
justify-content
:
center
;
}
.sty
>
div
{
line-height
:
20.8px
;
}
</
style
>
</
style
>
src/pages/supply/bid/joinProject/bidStage/bond/bond.vue
View file @
f1134b55
...
@@ -244,8 +244,6 @@ export default {
...
@@ -244,8 +244,6 @@ export default {
<
style
scoped
>
<
style
scoped
>
.message
{
}
.message
>
div
{
.message
>
div
{
background
:
#fff
;
background
:
#fff
;
...
...
src/pages/supply/bid/joinProject/bidStage/clearManagement/see.vue
View file @
f1134b55
...
@@ -21,8 +21,9 @@
...
@@ -21,8 +21,9 @@
<div>
澄清问题附件:
</div>
<div>
澄清问题附件:
</div>
<ul>
<ul>
<li
v-for=
"item in clarifies.clarifieslist"
:key=
"item.id"
>
<li
v-for=
"item in clarifies.clarifieslist"
:key=
"item.id"
>
<span>
{{
item
.
fileName
}}
</span>
<a
:href=
"item.accessoryUrl"
>
{{
item
.
fileName
}}
</a>
<el-button
@
click=
"down(item.accessoryUrl)"
>
下载
</el-button>
<!--
<span>
{{
item
.
fileName
}}
</span>
<el-button
@
click=
"down(item.accessoryUrl)"
>
下载
</el-button>
-->
</li>
</li>
</ul>
</ul>
</div>
</div>
...
@@ -90,9 +91,9 @@ export default {
...
@@ -90,9 +91,9 @@ export default {
}
}
},
},
methods
:
{
methods
:
{
down
(
url
){
/*
down(url){
window.open(url)
window.open(url)
},
},
*/
cancle
()
{
cancle
()
{
this
.
$router
.
go
(
-
1
)
this
.
$router
.
go
(
-
1
)
},
},
...
...
src/pages/supply/bid/joinProject/bidStage/tenderFee/detail.vue
View file @
f1134b55
...
@@ -160,7 +160,7 @@ export default {
...
@@ -160,7 +160,7 @@ export default {
isdisabled
:
true
,
isdisabled
:
true
,
title
:
'查看'
,
title
:
'查看'
,
state
:
''
,
state
:
''
,
breads
:
[
'投标管理'
,
'
招标项目管理
'
,
'工作台'
],
breads
:
[
'投标管理'
,
'
我参与的项目
'
,
'工作台'
],
ruleForm
:
{},
ruleForm
:
{},
formrules
:
{
formrules
:
{
companyName
:
[
companyName
:
[
...
...
src/pages/supply/bid/joinProject/bidSure/contractManagement.vue
View file @
f1134b55
...
@@ -10,56 +10,56 @@
...
@@ -10,56 +10,56 @@
<div>
项目名称:
{{
projectName
}}
</div>
<div>
项目名称:
{{
projectName
}}
</div>
</div>
</div>
<div
class=
"flex-between"
>
<div
class=
"flex-between"
>
<el-form-item
label=
"合同名称:"
prop=
"
n
ame"
>
<el-form-item
label=
"合同名称:"
prop=
"
contractN
ame"
>
<el-input
v-model=
"form.
n
ame"
placeholder=
"请输入"
></el-input>
<el-input
v-model=
"form.
contractN
ame"
placeholder=
"请输入"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
label=
"合同类型:"
prop=
"
nam
e"
>
<el-form-item
label=
"合同类型:"
prop=
"
contractTyp
e"
>
<el-input
v-model=
"form.
t
ype"
placeholder=
"请输入"
></el-input>
<el-input
v-model=
"form.
contractT
ype"
placeholder=
"请输入"
></el-input>
</el-form-item>
</el-form-item>
</div>
</div>
<div
class=
"flex-between"
>
<div
class=
"flex-between"
>
<el-form-item
label=
"工期:"
prop=
"
name
"
>
<el-form-item
label=
"工期:"
prop=
"
timeLimit
"
>
<el-input
v-model=
"form.
name
"
placeholder=
"请输入"
></el-input>
<el-input
v-model=
"form.
timeLimit
"
placeholder=
"请输入"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
label=
"总负责人名称:"
prop=
"
n
ame"
>
<el-form-item
label=
"总负责人名称:"
prop=
"
principalN
ame"
>
<el-input
v-model=
"form.
typ
e"
placeholder=
"请输入"
></el-input>
<el-input
v-model=
"form.
principalNam
e"
placeholder=
"请输入"
></el-input>
</el-form-item>
</el-form-item>
</div>
</div>
<div
class=
"flex-between"
>
<div
class=
"flex-between"
>
<el-form-item
label=
"总负责人身份证号:"
prop=
"
name
"
>
<el-form-item
label=
"总负责人身份证号:"
prop=
"
principalIdNumber
"
>
<el-input
v-model=
"form.
name
"
placeholder=
"请输入"
></el-input>
<el-input
v-model=
"form.
principalIdNumber
"
placeholder=
"请输入"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
label=
"采购商名称:"
prop=
"
n
ame"
>
<el-form-item
label=
"采购商名称:"
prop=
"
companyN
ame"
>
<el-input
v-model=
"form.
typ
e"
placeholder=
"请输入"
></el-input>
<el-input
v-model=
"form.
companyNam
e"
placeholder=
"请输入"
></el-input>
</el-form-item>
</el-form-item>
</div>
</div>
<div
class=
"flex-between"
>
<div
class=
"flex-between"
>
<el-form-item
label=
"是否联合体投标:"
prop=
"
nam
e"
>
<el-form-item
label=
"是否联合体投标:"
prop=
"
isAllianc
e"
>
<el-radio
v-model=
"form.
type"
label=
"1
"
>
是
</el-radio>
<el-radio
v-model=
"form.
isAlliance"
:label=
"true
"
>
是
</el-radio>
<el-radio
v-model=
"form.
type"
label=
"2
"
>
否
</el-radio>
<el-radio
v-model=
"form.
isAlliance"
:label=
"false
"
>
否
</el-radio>
</el-form-item>
</el-form-item>
<el-form-item
label=
"合同总价(元):"
prop=
"
nam
e"
>
<el-form-item
label=
"合同总价(元):"
prop=
"
contractPric
e"
>
<el-input
v-model=
"form.
typ
e"
placeholder=
"请输入"
></el-input>
<el-input
v-model=
"form.
contractPric
e"
placeholder=
"请输入"
></el-input>
</el-form-item>
</el-form-item>
</div>
</div>
<div
class=
"flex-between"
>
<div
class=
"flex-between"
>
<el-form-item
label=
"合同有效期起止日期:"
prop=
"
data
"
>
<el-form-item
label=
"合同有效期起止日期:"
prop=
"
validityTime
"
>
<el-date-picker
v-model=
"form.
data
"
type=
"datetimerange"
range-separator=
"至"
start-placeholder=
"开始日期"
<el-date-picker
v-model=
"form.
validityTime
"
type=
"datetimerange"
range-separator=
"至"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
>
end-placeholder=
"结束日期"
>
</el-date-picker>
</el-date-picker>
</el-form-item>
</el-form-item>
<el-form-item
label=
"合同期限(天):"
prop=
"
nam
e"
>
<el-form-item
label=
"合同期限(天):"
prop=
"
deadlin
e"
>
<el-input
v-model=
"form.
typ
e"
placeholder=
"请输入"
></el-input>
<el-input
v-model=
"form.
deadlin
e"
placeholder=
"请输入"
></el-input>
</el-form-item>
</el-form-item>
</div>
</div>
<el-form-item
label=
"合同文件:"
prop=
"
nam
e"
>
<el-form-item
label=
"合同文件:"
prop=
"
fil
e"
>
<
el-input
v-model=
"form.type"
placeholder=
"请输入"
></el-input
>
<
singleUpload
:limit=
"1"
:max=
"100"
accept=
".pdf"
tip=
"支持上传一个pdf格式文件,大小不超过100M"
@
input=
"getfile"
:fileList=
"ruleForm.contractFileName"
></singleUpload
>
</el-form-item>
</el-form-item>
<el-form-item
label=
"其它附件:"
prop=
"name"
>
<el-form-item
label=
"其它附件:"
>
<
el-input
v-model=
"form.type"
placeholder=
"请输入"
></el-input
>
<
singleUpload
:limit=
"3"
:max=
"100"
tip=
"支持上传三份附件,大小不超过100M"
@
input=
"getfile1"
:fileList=
"ruleForm.fileList"
></singleUpload
>
</el-form-item>
</el-form-item>
<el-form-item
label=
"合同范围:"
prop=
"
name
"
>
<el-form-item
label=
"合同范围:"
prop=
"
remark
"
>
<el-input
v-model=
"form.
type
"
:rows=
"4"
placeholder=
"请输入"
type=
"textarea"
></el-input>
<el-input
v-model=
"form.
remark
"
:rows=
"4"
placeholder=
"请输入"
type=
"textarea"
></el-input>
</el-form-item>
</el-form-item>
</el-form>
</el-form>
</div>
</div>
...
@@ -72,6 +72,7 @@
...
@@ -72,6 +72,7 @@
</
template
>
</
template
>
<
script
>
<
script
>
import
singleUpload
from
'@components/Upload/Upload.vue'
import
{
import
{
contractdetail
contractdetail
}
from
'@api/supply/bid'
}
from
'@api/supply/bid'
...
@@ -80,7 +81,8 @@
...
@@ -80,7 +81,8 @@
export
default
{
export
default
{
components
:
{
components
:
{
dataBreadcrumb
,
dataBreadcrumb
,
changeNav
changeNav
,
singleUpload
},
},
data
()
{
data
()
{
return
{
return
{
...
@@ -89,16 +91,37 @@
...
@@ -89,16 +91,37 @@
breads
:
[
'投标管理 '
,
'我参加的项目'
,
'工作台'
],
breads
:
[
'投标管理 '
,
'我参加的项目'
,
'工作台'
],
navs
:
[
'合同管理'
],
navs
:
[
'合同管理'
],
form
:
{
form
:
{
name
:
''
,
contractName
:
""
,
data
:
''
,
contractType
:
""
,
type
:
''
timeLimit
:
""
,
principalName
:
""
,
principalIdNumber
:
""
,
companyName
:
''
,
isAlliance
:
""
,
contractPrice
:
""
,
validityTime
:
""
,
deadline
:
""
,
/* FilePO: [], */
remark
:
""
,
fileList
:[],
contractFileName
:[]
},
},
rules
:
{
rules
:
{
na
me
:
[{
validityTi
me
:
[{
required
:
true
,
required
:
true
,
message
:
'请选择
时间
'
,
message
:
'请选择'
,
trigger
:
'blur'
trigger
:
'blur'
}]
}],
contractName
:
[{
required
:
true
,
message
:
'请输入'
,
trigger
:
'blur'
}],
file
:
[{
required
:
true
,
message
:
'请输入'
,
trigger
:
'blur'
}],
},
},
projectCode
:
""
,
projectCode
:
""
,
projectName
:
""
projectName
:
""
...
@@ -114,8 +137,22 @@
...
@@ -114,8 +137,22 @@
data
,
data
,
code
code
}
=
await
contractdetail
(
projectId
)
}
=
await
contractdetail
(
projectId
)
this
.
form
=
data
if
(
code
==
200
){
this
.
ruleForm
=
data
for
(
let
item
in
data
.
contractFileName
){
this
.
form
.
contractName
=
item
}
for
(
let
item1
in
data
.
fileList
){
this
.
form
.
fileList
=
item1
}
}
}
},
getfile
(
val
)
{
this
.
form
.
contractFileName
=
val
},
getfile1
(
val
)
{
this
.
form
.
fileList
=
val
},
},
},
created
()
{
created
()
{
this
.
projectCode
=
localStorage
.
getItem
(
"projectCode"
);
this
.
projectCode
=
localStorage
.
getItem
(
"projectCode"
);
...
...
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