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
96b199b3
Commit
96b199b3
authored
Oct 22, 2020
by
张冬
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
招标公告编辑
parent
8a41f77b
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
518 additions
and
384 deletions
+518
-384
noticeDetail.vue
src/components/detail/noticeDetail.vue
+1
-1
editTenderAnnouncement.vue
src/components/edit/editTenderAnnouncement.vue
+154
-0
content.vue
...es/purchaser/bid/bidEvaluation/projectManager/content.vue
+0
-0
review.vue
src/pages/purchaser/bid/bidEvaluation/review/review.vue
+19
-19
edit.vue
src/pages/purchaser/bid/bidSure/bidResult/edit.vue
+2
-4
list.vue
src/pages/purchaser/bid/bidSure/bidResult/list.vue
+2
-6
determine.vue
src/pages/purchaser/bid/bidSure/determine.vue
+2
-0
see.vue
src/pages/purchaser/bid/bidSure/see.vue
+67
-60
list.vue
src/pages/purchaser/bid/bidSure/winBid/list.vue
+3
-7
SeetenderAnnouncement.vue
src/pages/purchaser/bid/reviewed/SeetenderAnnouncement.vue
+70
-65
buyoutList.vue
src/pages/purchaser/buyOut/buyoutList.vue
+5
-5
voucherSee.vue
src/pages/purchaser/buyOut/voucherSee.vue
+6
-4
voucherSign.vue
src/pages/purchaser/buyOut/voucherSign.vue
+99
-119
noticeSee.vue
src/pages/supply/bid/joinProject/bidSure/noticeSee.vue
+88
-94
No files found.
src/components/detail/noticeDetail.vue
View file @
96b199b3
...
@@ -43,9 +43,9 @@ export default {
...
@@ -43,9 +43,9 @@ export default {
async
getbiddingProjectId
()
{
async
getbiddingProjectId
()
{
let
projectId
=
localStorage
.
getItem
(
'projectId'
);
let
projectId
=
localStorage
.
getItem
(
'projectId'
);
const
{
data
,
code
,
msg
}
=
await
biddingProjectId
(
projectId
);
const
{
data
,
code
,
msg
}
=
await
biddingProjectId
(
projectId
);
this
.
$emit
(
"getmsg"
,
code
)
if
(
code
==
200
)
{
if
(
code
==
200
)
{
this
.
detail
=
data
;
this
.
detail
=
data
;
this
.
$emit
(
"getstate"
,
data
.
auditStatus
)
}
else
if
(
code
==
500
)
{
}
else
if
(
code
==
500
)
{
this
.
state
=
false
;
this
.
state
=
false
;
this
.
msg
=
msg
;
this
.
msg
=
msg
;
...
...
src/components/edit/editTenderAnnouncement.vue
0 → 100644
View file @
96b199b3
<
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=
"100px"
class=
"demo-ruleForm"
>
<el-form-item
label=
"公告标题"
prop=
"title"
><strong></strong>
<el-input
v-model
.
trim=
"ruleForm.title"
maxlength=
"30"
></el-input>
</el-form-item>
<el-form-item
label=
"上传附件"
><strong></strong>
<singleUpload
tip=
"支持扩展名:.rar .zip .doc .docx .pdf .jpg..."
@
input=
"getfile"
:fileList=
"ruleForm.accessoryVOList"
></singleUpload>
</el-form-item>
<el-form-item
label=
"公告内容"
prop=
"content"
>
<quill-editor
ref=
"text"
v-model=
"ruleForm.content"
:options=
"editorOption"
class=
"myQuillEditor"
/>
</el-form-item>
</el-form>
</div>
</div>
<div
class=
"bottomButton"
>
<el-button
@
click=
"back"
>
取消
</el-button>
<el-button
type=
"primary"
@
click=
"submit"
>
编辑
</el-button>
</div>
</div>
</
template
>
<
script
>
import
{
editBidding
}
from
'@api/purchaser/bid'
;
import
{
biddingProjectId
}
from
'@api/common/list'
;
import
{
quillEditor
}
from
'vue-quill-editor'
;
import
'quill/dist/quill.core.css'
;
import
'quill/dist/quill.snow.css'
;
import
'quill/dist/quill.bubble.css'
;
import
dataBreadcrumb
from
'@components/dataBreadcrumb.vue'
;
import
singleUpload
from
'@components/Upload/Upload.vue'
;
export
default
{
components
:
{
dataBreadcrumb
,
singleUpload
,
quillEditor
},
data
()
{
// 检测文件是否上传
let
checkupload
=
(
rule
,
value
,
callback
)
=>
{
if
(
this
.
justimg
.
length
===
0
)
{
callback
(
new
Error
(
'请上传正面照片'
));
}
else
{
callback
();
}
};
return
{
accessoryPOList
:
[],
editorOption
:
{},
breads
:
[
'招标管理'
,
'招标项目管理'
,
'工作台'
],
ruleForm
:
{
title
:
''
,
content
:
''
},
rules
:
{
title
:
[
{
required
:
true
,
message
:
'请填写'
,
trigger
:
'blue'
}
],
content
:
[
{
required
:
true
,
message
:
'请填写'
,
trigger
:
'blue'
}
]
}
};
},
created
()
{
this
.
getbiddingProjectId
();
},
methods
:
{
back
()
{
this
.
$router
.
go
(
-
1
);
},
cancel
()
{
this
.
$router
.
go
(
-
1
);
},
getfile
(
val
)
{
for
(
let
item
of
val
)
{
item
.
accessoryUrl
=
item
.
fileUrl
;
}
this
.
accessoryPOList
=
val
;
},
//提交表单
async
submit
()
{
let
ruleForm
=
this
.
ruleForm
;
ruleForm
.
projectId
=
localStorage
.
getItem
(
'projectId'
);
ruleForm
.
accessoryPOList
=
this
.
accessoryPOList
;
try
{
const
valid
=
await
this
.
$refs
[
'ruleForm'
].
validate
();
if
(
valid
)
{
const
{
code
,
msg
}
=
await
editBidding
(
this
.
ruleForm
);
if
(
code
===
200
)
{
this
.
$message
({
message
:
msg
,
type
:
'success'
,
duration
:
1500
});
setTimeout
(()
=>
{
this
.
$router
.
go
(
-
1
);
},
1500
);
}
else
if
(
code
==
500
)
{
this
.
$message
.
error
(
msg
);
}
}
}
catch
(
err
)
{
console
.
log
(
err
);
}
},
// 获取详情
async
getbiddingProjectId
()
{
let
projectId
=
localStorage
.
getItem
(
'projectId'
);
const
{
data
,
code
,
msg
}
=
await
biddingProjectId
(
projectId
);
if
(
code
==
200
)
{
for
(
let
item
of
data
.
accessoryVOList
){
item
.
url
=
item
.
accessoryUrl
item
.
name
=
item
.
fileName
}
this
.
ruleForm
=
data
;
}
}
}
};
</
script
>
<
style
scoped
>
.ql-editor
{
height
:
400px
;
}
.bottomButton
{
margin-top
:
20px
;
}
.form
{
padding-bottom
:
80px
;
}
</
style
>
\ No newline at end of file
src/pages/purchaser/bid/bidEvaluation/projectManager/content.vue
View file @
96b199b3
This diff is collapsed.
Click to expand it.
src/pages/purchaser/bid/bidEvaluation/review/review.vue
View file @
96b199b3
...
@@ -44,26 +44,26 @@
...
@@ -44,26 +44,26 @@
<dataTable
:table-data=
"review"
:columns=
"reviewTitle"
:is-index=
"true"
>
<dataTable
:table-data=
"review"
:columns=
"reviewTitle"
:is-index=
"true"
>
<el-table-column
slot=
"operate"
label=
"资格审查"
align=
"center"
fixed=
"right"
>
<el-table-column
slot=
"operate"
label=
"资格审查"
align=
"center"
fixed=
"right"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
<div
v-if=
"scope.row.qualification
== true
"
>
通过
</div>
<div
v-if=
"scope.row.qualification"
>
通过
</div>
<div
v-if=
"
scope.row.qualification == false
"
>
未通过
</div>
<div
v-if=
"
!scope.row.qualification
"
>
未通过
</div>
</
template
>
</
template
>
</el-table-column>
</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"
>
<
template
slot-scope=
"scope"
>
<div
v-if=
"scope.row.conformity
== true
"
>
通过
</div>
<div
v-if=
"scope.row.conformity"
>
通过
</div>
<div
v-if=
"
scope.row.conformity == false
"
>
未通过
</div>
<div
v-if=
"
!scope.row.conformity
"
>
未通过
</div>
</
template
>
</
template
>
</el-table-column>
</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"
>
<
template
slot-scope=
"scope"
>
<div
v-if=
"scope.row.bidRejection
== true
"
>
通过
</div>
<div
v-if=
"scope.row.bidRejection"
>
通过
</div>
<div
v-if=
"
scope.row.bidRejection == false
"
>
未通过
</div>
<div
v-if=
"
!scope.row.bidRejection
"
>
未通过
</div>
</
template
>
</
template
>
</el-table-column>
</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"
>
<
template
slot-scope=
"scope"
>
<div
v-if=
"scope.row.conclusion
== true
"
>
通过
</div>
<div
v-if=
"scope.row.conclusion"
>
通过
</div>
<div
v-if=
"
scope.row.conclusion == false
"
>
未通过
</div>
<div
v-if=
"
!scope.row.conclusion
"
>
未通过
</div>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
slot=
"operate"
label=
"操作"
align=
"center"
fixed=
"right"
>
<el-table-column
slot=
"operate"
label=
"操作"
align=
"center"
fixed=
"right"
>
...
@@ -79,8 +79,8 @@
...
@@ -79,8 +79,8 @@
<dataTable
:table-data=
"rank"
:columns=
"rankTitle"
:is-index=
"true"
>
<dataTable
:table-data=
"rank"
:columns=
"rankTitle"
:is-index=
"true"
>
<el-table-column
slot=
"operate"
label=
"是否中标候选人"
align=
"center"
fixed=
"right"
>
<el-table-column
slot=
"operate"
label=
"是否中标候选人"
align=
"center"
fixed=
"right"
>
<
template
slot-scope=
"scope"
>
<
template
slot-scope=
"scope"
>
<div
v-if=
"scope.row.winPerson
== 'true'
"
>
是
</div>
<div
v-if=
"scope.row.winPerson"
>
是
</div>
<div
v-if=
"
scope.row.winPerson == 'false'
"
>
否
</div>
<div
v-if=
"
!scope.row.winPerson
"
>
否
</div>
</
template
>
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
slot=
"operate"
label=
"排名"
align=
"center"
fixed=
"right"
>
<el-table-column
slot=
"operate"
label=
"排名"
align=
"center"
fixed=
"right"
>
...
@@ -175,8 +175,8 @@
...
@@ -175,8 +175,8 @@
></el-input-number>
></el-input-number>
</el-form-item>
</el-form-item>
<el-form-item
label=
"是否中标候选人"
prop=
"winPerson"
>
<el-form-item
label=
"是否中标候选人"
prop=
"winPerson"
>
<el-radio
v-model=
"rankForm.winPerson"
label=
"true"
>
是
</el-radio>
<el-radio
v-model=
"rankForm.winPerson"
:
label=
"true"
>
是
</el-radio>
<el-radio
v-model=
"rankForm.winPerson"
label=
"false"
>
否
</el-radio>
<el-radio
v-model=
"rankForm.winPerson"
:
label=
"false"
>
否
</el-radio>
</el-form-item>
</el-form-item>
</el-form>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
<div
slot=
"footer"
class=
"dialog-footer"
>
...
@@ -596,13 +596,13 @@ export default {
...
@@ -596,13 +596,13 @@ export default {
let
projectId
=
localStorage
.
getItem
(
'projectId'
);
let
projectId
=
localStorage
.
getItem
(
'projectId'
);
const
{
data
,
code
}
=
await
companyRank
(
projectId
);
const
{
data
,
code
}
=
await
companyRank
(
projectId
);
if
(
code
===
200
)
{
if
(
code
===
200
)
{
for
(
let
item
of
data
){
//
for(let item of data){
if
(
item
.
winPerson
){
//
if(item.winPerson){
item
.
winPerson
=
"true"
//
item.winPerson="true"
}
else
{
//
}else{
item
.
winPerson
=
"false"
//
item.winPerson="false"
}
//
}
}
//
}
let
data1
=
data
.
sort
(
this
.
compare
(
'finalScore'
));
let
data1
=
data
.
sort
(
this
.
compare
(
'finalScore'
));
this
.
rank
=
data1
;
this
.
rank
=
data1
;
}
}
...
...
src/pages/purchaser/bid/bidSure/bidResult/edit.vue
View file @
96b199b3
...
@@ -41,7 +41,7 @@
...
@@ -41,7 +41,7 @@
}
from
'@api/purchaser/bid'
}
from
'@api/purchaser/bid'
import
dataBreadcrumb
from
'@components/dataBreadcrumb.vue'
import
dataBreadcrumb
from
'@components/dataBreadcrumb.vue'
import
dataTable
from
'@components/dataTable.vue'
import
dataTable
from
'@components/dataTable.vue'
import
singleUpload
from
'@components/Upload/
single
Upload.vue'
import
singleUpload
from
'@components/Upload/Upload.vue'
export
default
{
export
default
{
name
:
'bidingList'
,
name
:
'bidingList'
,
components
:
{
components
:
{
...
@@ -132,9 +132,7 @@
...
@@ -132,9 +132,7 @@
<
style
scoped
>
<
style
scoped
>
.message
{
/* width:60%; */
}
.message
>
div
{
.message
>
div
{
margin-bottom
:
30px
;
margin-bottom
:
30px
;
...
...
src/pages/purchaser/bid/bidSure/bidResult/list.vue
View file @
96b199b3
...
@@ -84,12 +84,8 @@ export default {
...
@@ -84,12 +84,8 @@ export default {
}
=
await
resultBookList
(
projectId
)
}
=
await
resultBookList
(
projectId
)
if
(
code
===
200
)
{
if
(
code
===
200
)
{
for
(
let
item
of
data
)
{
for
(
let
item
of
data
)
{
if
(
item
.
status
==
0
)
{
if
(
item
.
status
==
1
)
{
item
.
state
=
"未审核"
item
.
state
=
"已发送"
}
else
if
(
item
.
status
==
1
)
{
item
.
state
=
"通过审核"
}
else
if
(
item
.
status
==
2
)
{
item
.
state
=
"未通过审核"
}
else
if
(
item
.
status
==
-
1
)
{
}
else
if
(
item
.
status
==
-
1
)
{
item
.
state
=
"暂存本地"
item
.
state
=
"暂存本地"
}
}
...
...
src/pages/purchaser/bid/bidSure/determine.vue
View file @
96b199b3
...
@@ -150,6 +150,8 @@
...
@@ -150,6 +150,8 @@
setTimeout
(()
=>
{
setTimeout
(()
=>
{
this
.
$router
.
go
(
-
1
)
this
.
$router
.
go
(
-
1
)
},
1500
)
},
1500
)
}
else
{
this
.
$message
.
error
(
msg
);
}
}
}
catch
(
e
)
{
}
catch
(
e
)
{
console
.
log
(
e
)
console
.
log
(
e
)
...
...
src/pages/purchaser/bid/bidSure/see.vue
View file @
96b199b3
...
@@ -71,22 +71,32 @@
...
@@ -71,22 +71,32 @@
<!-- 排名信息 -->
<!-- 排名信息 -->
<div>
<div>
<h5>
排名信息
</h5>
<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"
>
<el-table-column
slot=
"operate"
label=
"是否中标候选人"
align=
"center"
fixed=
"right"
>
<
template
slot-scope=
"scope"
>
<div
v-if=
"scope.row.winPerson"
>
是
</div>
<div
v-if=
"!scope.row.winPerson"
>
否
</div>
</
template
>
</el-table-column>
<el-table-column
slot=
"operate"
label=
"排名"
align=
"center"
fixed=
"right"
>
<
template
slot-scope=
"scope"
>
<div
v-if=
"scope.row.finalScore"
>
{{
scope
.
$index
+
1
}}
</div>
</
template
>
</el-table-column>
</dataTable>
</div>
</div>
<div
class=
"flex"
>
<div
class=
"flex"
>
<div>
评标附件:
</div>
<div>
评标附件:
</div>
<ul
class=
"upload"
>
<ul
class=
"upload"
>
<li
class=
"flex"
>
<li
class=
"flex"
v-for=
"(item, index) in downloadList"
:key=
"index"
>
<div>
评价附件.pdf
</div>
<div>
{{ item.fileName }}
</div>
<button>
下载
</button>
<button
@
click=
"down(item.fileUrl)"
>
下载
</button>
</li>
</li>
</ul>
</ul>
</div>
</div>
<!-- <div class="button">
<div
class=
"centerButton"
>
<el-button @click="back">返回</el-button>
<el-button
@
click=
"back"
>
返回
</el-button>
<el-button @click="fail">流标</el-button>
</div>
<el-button type="primary">评标结束</el-button>
</div> -->
</div>
</div>
<!-- 开标一览表 -->
<!-- 开标一览表 -->
<el-dialog
title=
"开标一览表"
:visible
.
sync=
"isOpenInfo"
>
<el-dialog
title=
"开标一览表"
:visible
.
sync=
"isOpenInfo"
>
...
@@ -96,15 +106,19 @@
...
@@ -96,15 +106,19 @@
</div>
</div>
</el-dialog>
</el-dialog>
</div>
</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>
</div>
</template>
</template>
<
script
>
<
script
>
import
{
companyRank
,
CompanyEvaluatec
,
bidBookDownload
,
openInfo
,
accessorydownload
,
bidFilelist
,
changeNoticelist
}
from
'@api/purchaser/bid'
;
import
{
companyRank
,
CompanyEvaluatec
,
bidBookDownload
,
openInfo
,
accessorydownload
,
bidFilelist
,
changeNoticelist
}
from
'@api/purchaser/bid'
;
import
dataTable
from
'@components/nopageTable.vue'
;
import
dataTable
from
'@components/nopageTable.vue'
;
import
dataBreadcrumb
from
'@components/dataBreadcrumb.vue'
;
import
dataBreadcrumb
from
'@components/dataBreadcrumb.vue'
;
export
default
{
export
default
{
...
@@ -114,6 +128,7 @@ export default {
...
@@ -114,6 +128,7 @@ export default {
},
},
data
()
{
data
()
{
return
{
return
{
changeList
:
[],
isOpenInfo
:
false
,
isOpenInfo
:
false
,
tableData
:
[],
tableData
:
[],
nopagecolumns
:
[
nopagecolumns
:
[
...
@@ -157,10 +172,6 @@ export default {
...
@@ -157,10 +172,6 @@ export default {
label
:
'评标价(元)'
,
label
:
'评标价(元)'
,
prop
:
'evaluationPrice'
prop
:
'evaluationPrice'
},
},
{
label
:
'排名'
,
prop
:
'rank'
},
{
{
label
:
'最终得分'
,
label
:
'最终得分'
,
prop
:
'finalScore'
prop
:
'finalScore'
...
@@ -173,7 +184,7 @@ export default {
...
@@ -173,7 +184,7 @@ export default {
bidTitle
:
[
bidTitle
:
[
{
{
label
:
'投标人'
,
label
:
'投标人'
,
prop
:
'
n
ame'
prop
:
'
companyN
ame'
},
},
{
{
slot
:
'operate'
slot
:
'operate'
...
@@ -202,8 +213,14 @@ export default {
...
@@ -202,8 +213,14 @@ export default {
this
.
getcompanyRank
();
this
.
getcompanyRank
();
this
.
getCompanyEvaluatec
();
this
.
getCompanyEvaluatec
();
this
.
getbidBookDownload
();
this
.
getbidBookDownload
();
this
.
getchangeNoticelist
();
this
.
getaccessorydownload
();
this
.
getbidFilelist
()
},
},
methods
:
{
methods
:
{
down
(
url
)
{
window
.
open
(
url
);
},
back
()
{
back
()
{
this
.
$router
.
go
(
-
1
);
this
.
$router
.
go
(
-
1
);
},
},
...
@@ -289,53 +306,43 @@ export default {
...
@@ -289,53 +306,43 @@ export default {
}
}
},
},
// 查看评标附件
// 查看评标附件
async
getaccessorydownload
()
{
async
getaccessorydownload
()
{
let
projectId
=
localStorage
.
getItem
(
"projectId"
);
let
projectId
=
localStorage
.
getItem
(
'projectId'
);
const
{
const
{
data
,
code
}
=
await
accessorydownload
(
projectId
);
data
,
if
(
code
===
200
)
{
code
this
.
downloadList
=
data
;
}
=
await
accessorydownload
(
projectId
)
}
if
(
code
===
200
)
{
},
this
.
downloadList
=
data
// 查看投标文件
}
async
getbidFilelist
()
{
},
let
projectId
=
localStorage
.
getItem
(
'projectId'
);
// 查看投标文件
const
{
data
,
code
}
=
await
bidFilelist
(
projectId
);
async
getbidFilelist
()
{
if
(
code
===
200
)
{
let
projectId
=
localStorage
.
getItem
(
"projectId"
);
this
.
bids
=
data
;
const
{
}
data
,
},
code
// 查看变更信息
}
=
await
bidFilelist
(
projectId
)
async
getchangeNoticelist
()
{
if
(
code
===
200
)
{
let
projectId
=
localStorage
.
getItem
(
'projectId'
);
this
.
bids
=
data
const
{
data
,
code
}
=
await
changeNoticelist
(
projectId
);
}
if
(
code
===
200
)
{
},
this
.
changeList
=
data
;
// 查看变更信息
}
async
getchangeNoticelist
()
{
}
let
projectId
=
localStorage
.
getItem
(
"projectId"
);
const
{
data
,
code
}
=
await
changeNoticelist
(
projectId
)
if
(
code
===
200
)
{
this
.
changeList
=
data
;
}
},
//
//
}
}
};
};
</
script
>
</
script
>
<
style
scoped
>
<
style
scoped
>
.bond
span
{
.bond
span
{
cursor
:
pointer
;
cursor
:
pointer
;
}
}
.file
>
div
{
.file
>
div
{
margin-right
:
10px
;
margin-right
:
10px
;
color
:
#113DEE
;
color
:
#113dee
;
cursor
:
pointer
;
cursor
:
pointer
;
}
}
.message
{
.message
{
margin-left
:
50px
;
margin-left
:
50px
;
...
...
src/pages/purchaser/bid/bidSure/winBid/list.vue
View file @
96b199b3
...
@@ -85,13 +85,9 @@
...
@@ -85,13 +85,9 @@
}
=
await
sentBookList
(
projectId
)
}
=
await
sentBookList
(
projectId
)
if
(
code
===
200
)
{
if
(
code
===
200
)
{
for
(
let
item
of
data
)
{
for
(
let
item
of
data
)
{
if
(
item
.
status
==
0
)
{
if
(
item
.
status
==
1
)
{
item
.
state
=
"未审核"
item
.
state
=
"已发送"
}
else
if
(
item
.
status
==
1
)
{
}
else
if
(
item
.
status
==
-
1
)
{
item
.
state
=
"通过审核"
}
else
if
(
item
.
status
==
2
)
{
item
.
state
=
"未通过审核"
}
else
if
(
item
.
status
==
-
1
)
{
item
.
state
=
"暂存本地"
item
.
state
=
"暂存本地"
}
}
}
}
...
...
src/pages/purchaser/bid/reviewed/SeetenderAnnouncement.vue
View file @
96b199b3
<
template
>
<
template
>
<div
class=
"info"
>
<div
class=
"info"
>
<div
class=
"content"
>
<div
class=
"content"
>
<div
class=
"title_info"
>
<editTenderAnnouncement
v-if=
"auditStatus == 2"
></editTenderAnnouncement>
<dataBreadcrumb
:breads=
"breads"
></dataBreadcrumb>
<div
v-if=
"auditStatus == 0||auditStatus == 1"
>
</div>
<div
class=
"title_info"
>
<div
class=
"info_box"
>
<dataBreadcrumb
:breads=
"breads"
></dataBreadcrumb>
<noticeDetail></noticeDetail>
</div>
<el-row>
<div
class=
"info_box"
>
<el-button
@
click=
"back"
>
返回
</el-button>
<noticeDetail
@
getstate=
"getstate"
></noticeDetail>
</el-row>
<el-row>
</div>
<el-button
@
click=
"back"
>
返回
</el-button>
</el-row>
</div>
</div>
</div>
</div>
</div>
</div>
</
template
>
</
template
>
<
script
>
<
script
>
import
noticeDetail
from
'@components/detail/noticeDetail.vue'
import
noticeDetail
from
'@components/detail/noticeDetail.vue'
;
import
dataBreadcrumb
from
'@components/dataBreadcrumb.vue'
import
editTenderAnnouncement
from
'@components/edit/editTenderAnnouncement.vue'
;
import
dataBreadcrumb
from
'@components/dataBreadcrumb.vue'
;
export
default
{
export
default
{
components
:
{
components
:
{
dataBreadcrumb
,
dataBreadcrumb
,
noticeDetail
noticeDetail
,
},
editTenderAnnouncement
data
()
{
},
return
{
data
()
{
breads
:
[
'投标管理'
,
'在线报名'
,
'招标公告'
],
return
{
breads
:
[
'投标管理'
,
'在线报名'
,
'招标公告'
],
auditStatus
:
''
};
},
methods
:
{
getstate
(
val
)
{
this
.
auditStatus
=
val
;
},
back
()
{
this
.
$router
.
go
(
-
1
);
}
}
}
},
};
methods
:
{
back
()
{
this
.
$router
.
go
(
-
1
)
},
},
}
</
script
>
</
script
>
<
style
scoped
>
<
style
scoped
>
.info
{
.info
{
box-sizing
:
border-box
;
box-sizing
:
border-box
;
padding
:
30px
;
padding
:
30px
;
background
:
rgb
(
240
,
242
,
245
);
background
:
rgb
(
240
,
242
,
245
);
width
:
100%
;
width
:
100%
;
}
}
.info
>
.info_prev
{
.info
>
.info_prev
{
box-sizing
:
border-box
;
box-sizing
:
border-box
;
padding-left
:
30px
;
padding-left
:
30px
;
padding-top
:
30px
;
padding-top
:
30px
;
background
:
#fff
;
background
:
#fff
;
}
}
.content_list
{
.content_list
{
margin-top
:
50px
;
margin-top
:
50px
;
}
}
.content_list
h3
{
margin-top
:
30px
;
font-weight
:
bold
;
padding-bottom
:
10px
;
}
.content_list
p
{
.content_list
h3
{
margin-top
:
10px
;
margin-top
:
30px
;
margin-bottom
:
10px
;
font-weight
:
bold
;
}
padding-bottom
:
10px
;
}
.content_list
p
{
.message
>
p
{
margin-top
:
10px
;
font-weight
:
bold
;
margin-bottom
:
10px
;
}
}
.el-row
{
display
:
flex
;
.message
>
p
{
justify-content
:
center
;
font-weight
:
bold
;
margin-top
:
50px
;
}
.el-row
{
}
display
:
flex
;
justify-content
:
center
;
margin-top
:
50px
;
}
</
style
>
</
style
>
src/pages/purchaser/buyOut/buyoutList.vue
View file @
96b199b3
...
@@ -24,8 +24,8 @@
...
@@ -24,8 +24,8 @@
<el-button
type=
"text"
size=
"small"
v-else
disabled
>
合同查看
</el-button>
<el-button
type=
"text"
size=
"small"
v-else
disabled
>
合同查看
</el-button>
</div>
</div>
<div>
<div>
<el-button
type=
"text"
size=
"small"
@
click=
"voucherSign(scope.row
.projectId
)"
v-if=
"scope.row.voucherOperation==1"
>
确认凭证
</el-button>
<el-button
type=
"text"
size=
"small"
@
click=
"voucherSign(scope.row)"
v-if=
"scope.row.voucherOperation==1"
>
确认凭证
</el-button>
<el-button
type=
"text"
size=
"small"
@
click=
"voucherSee(scope.row
.projectId
)"
v-else-if=
"scope.row.voucherOperation==2"
>
查看凭证
</el-button>
<el-button
type=
"text"
size=
"small"
@
click=
"voucherSee(scope.row)"
v-else-if=
"scope.row.voucherOperation==2"
>
查看凭证
</el-button>
<el-button
type=
"text"
size=
"small"
v-else
disabled
>
查看凭证
</el-button>
<el-button
type=
"text"
size=
"small"
v-else
disabled
>
查看凭证
</el-button>
</div>
</div>
</div>
</div>
...
@@ -103,10 +103,10 @@
...
@@ -103,10 +103,10 @@
})
})
},
},
voucherSee
(
id
)
{
voucherSee
(
id
)
{
this
.
$router
.
push
(
`/purchaser/buyOut/voucherSee?
id=
${
i
d
}
`
)
this
.
$router
.
push
(
`/purchaser/buyOut/voucherSee?
projectId=
${
row
.
projectId
}
&companyId=
${
row
.
bidCompanyI
d
}
`
)
},
},
voucherSign
(
id
)
{
voucherSign
(
row
)
{
this
.
$router
.
push
(
`/purchaser/buyOut/voucherSign?
id=
${
i
d
}
`
)
this
.
$router
.
push
(
`/purchaser/buyOut/voucherSign?
projectId=
${
row
.
projectId
}
&companyId=
${
row
.
bidCompanyI
d
}
`
)
},
},
async
getDropList
()
{
async
getDropList
()
{
const
{
const
{
...
...
src/pages/purchaser/buyOut/voucherSee.vue
View file @
96b199b3
...
@@ -31,7 +31,8 @@ export default {
...
@@ -31,7 +31,8 @@ export default {
data
()
{
data
()
{
return
{
return
{
breads
:
[
'应收账款买断管理'
,
'应收账款买断列表'
],
breads
:
[
'应收账款买断管理'
,
'应收账款买断列表'
],
id
:
''
,
projectId
:
''
,
companyId
:
''
,
imgList
:[],
imgList
:[],
srcList
:[]
srcList
:[]
};
};
...
@@ -43,8 +44,8 @@ export default {
...
@@ -43,8 +44,8 @@ export default {
// 查看详情
// 查看详情
async
getevidenceDetail
()
{
async
getevidenceDetail
()
{
let
message
=
{};
let
message
=
{};
message
.
projectId
=
this
.
id
;
message
.
projectId
=
this
.
projectId
message
.
companyId
=
localStorage
.
getItem
(
'companyId'
);
message
.
companyId
=
this
.
companyId
const
{
data
,
code
,
msg
}
=
await
evidenceDetail
(
message
);
const
{
data
,
code
,
msg
}
=
await
evidenceDetail
(
message
);
if
(
code
==
200
)
{
if
(
code
==
200
)
{
this
.
imgList
=
data
;
this
.
imgList
=
data
;
...
@@ -57,7 +58,8 @@ export default {
...
@@ -57,7 +58,8 @@ export default {
}
}
},
},
created
()
{
created
()
{
this
.
id
=
this
.
$route
.
query
.
id
;
this
.
projectId
=
this
.
$route
.
query
.
projectId
;
this
.
companyId
=
this
.
$route
.
query
.
companyId
;
this
.
getevidenceDetail
();
this
.
getevidenceDetail
();
}
}
};
};
...
...
src/pages/purchaser/buyOut/voucherSign.vue
View file @
96b199b3
<
template
>
<
template
>
<div>
<div>
<div
class=
"content-head"
>
<div
class=
"content-head"
>
<dataBreadcrumb
:breads=
"breads"
></dataBreadcrumb>
<dataBreadcrumb
:breads=
"breads"
></dataBreadcrumb>
<h3>
确认凭证
</h3>
<h3>
确认凭证
</h3>
<h5>
确认应收账款等凭证
</h5>
<h5>
确认应收账款等凭证
</h5>
</div>
</div>
<div
class=
"content"
>
<div
class=
"content"
>
<div
class=
"flex-item"
>
<div
class=
"flex"
style=
"margin-top: 50px"
>
<div>
下载合同:
</div>
<div>
查看图片:
</div>
<ul>
<div
class=
"img-list flex"
>
<li
class=
"flex-item"
>
<div
v-for=
"(item, index) in imgList"
:key=
"index"
>
<div>
{{
detail
.
fileName
}}
f
</div>
<el-image
:src=
"item"
:preview-src-list=
"srcList"
style=
"width: 100px; height: 100px"
>
</el-image>
<!--
<el-button
size=
"mini"
>
下载
</el-button>
-->
</div>
<a
:href=
"detail.fileUrl"
>
下载
</a>
</div>
</li>
</div>
</ul>
<div
class=
"backButton"
>
</div>
<el-button
@
click=
"back"
>
返回
</el-button>
<div
class=
"flex"
style=
"margin-top: 50px;"
>
<el-button
@
click=
"submitData()"
>
确认
</el-button>
<div>
查看图片:
</div>
</div>
<div
class=
"img-list flex"
>
</div>
<div
v-for=
"(item,index) in imgList"
:key=
"index"
>
</div>
<el-image
:src=
"item"
:preview-src-list=
"srcList"
style=
"width: 100px; height: 100px"
>
</el-image>
</div>
</div>
</div>
<div
class=
"backButton"
>
<el-button
@
click=
"back"
>
返回
</el-button>
<el-button
@
click=
"submitData()"
>
确认
</el-button>
</div>
</div>
</div>
</
template
>
</
template
>
<
script
>
<
script
>
import
{
import
{
confirmvoucher
,
evidenceDetail
}
from
'@api/purchaser/buyOut'
;
confirmvoucher
,
import
dataBreadcrumb
from
'@components/dataBreadcrumb.vue'
;
evidenceDetail
export
default
{
}
from
'@api/purchaser/buyOut'
components
:
{
import
dataBreadcrumb
from
'@components/dataBreadcrumb.vue'
dataBreadcrumb
export
default
{
},
components
:
{
data
()
{
dataBreadcrumb
return
{
},
breads
:
[
'应收账款买断管理'
,
'应收账款买断列表'
],
data
()
{
projectId
:
''
,
return
{
companyId
:
''
,
imgList
:
[
'https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg'
,
imgList
:
[],
'https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg'
srcList
:
[]
],
};
breads
:
[
'应收账款买断管理'
,
'应收账款买断列表'
],
},
srcList
:
[
created
()
{
'https://fuss10.elemecdn.com/8/27/f01c15bb73e1ef3793e64e6b7bbccjpeg.jpeg'
,
this
.
getevidenceDetail
();
'https://fuss10.elemecdn.com/1/8e/aeffeb4de74e2fde4bd74fc7b4486jpeg.jpeg'
},
],
methods
:
{
id
:
""
,
back
()
{
detail
:
""
this
.
$router
.
go
(
-
1
);
}
},
},
// 查看详情
created
()
{
async
getevidenceDetail
()
{
this
.
getevidenceDetail
()
let
message
=
{};
},
message
.
projectId
=
this
.
projectId
;
methods
:
{
message
.
companyId
=
this
.
companyId
;
back
()
{
const
{
data
,
code
}
=
await
evidenceDetail
(
message
);
this
.
$router
.
go
(
-
1
)
if
(
code
==
200
)
{
},
this
.
imgList
=
data
;
// 查看详情
for
(
let
item
of
data
)
{
async
getevidenceDetail
()
{
this
.
srcList
.
push
(
item
.
fileUrl
);
let
message
=
{}
}
message
.
projectId
=
this
.
id
}
else
{
message
.
companyId
=
localStorage
.
getItem
(
"companyId"
)
this
.
$message
.
error
(
msg
);
const
{
}
data
,
},
code
// 提出
}
=
await
evidenceDetail
(
message
)
async
submitData
()
{
if
(
code
==
200
)
{
try
{
this
.
detail
=
data
let
projectId
=
this
.
projectId
;
}
const
{
msg
,
code
}
=
await
confirmvoucher
(
projectId
);
},
if
(
code
==
200
)
{
// 提出
this
.
$message
({
async
submitData
()
{
message
:
msg
,
try
{
type
:
'success'
,
let
projectId
=
this
.
id
duration
:
1500
const
{
});
msg
,
setTimeout
(()
=>
{
code
this
.
$router
.
go
(
-
1
);
}
=
await
confirmvoucher
(
projectId
)
},
1500
);
if
(
code
==
200
)
{
}
else
{
this
.
$message
({
this
.
$message
.
error
(
msg
);
message
:
msg
,
}
type
:
'success'
,
}
catch
(
e
)
{
duration
:
1500
console
.
log
(
e
);
})
}
setTimeout
(()
=>
{
}
this
.
$router
.
go
(
-
1
)
},
},
1500
)
created
()
{
this
.
projectId
=
this
.
$route
.
query
.
projectId
;
}
else
{
this
.
companyId
=
this
.
$route
.
query
.
companyId
;
this
.
$message
.
error
(
msg
)
this
.
getevidenceDetail
();
}
}
}
catch
(
e
)
{
};
console
.
log
(
e
)
}
},
},
created
()
{
this
.
id
=
this
.
$route
.
query
.
id
this
.
getevidenceDetail
();
}
}
</
script
>
</
script
>
<
style
scoped
>
<
style
scoped
>
.img-list
{
.img-list
{
flex-wrap
:
wrap
;
flex-wrap
:
wrap
;
}
}
.img-list
>
div
{
.img-list
>
div
{
margin-right
:
20px
;
margin-right
:
20px
;
}
}
ul
>
li
>
div
{
ul
>
li
>
div
{
margin-right
:
10px
;
margin-right
:
10px
;
}
}
.backButton
{
.backButton
{
width
:
200px
;
width
:
200px
;
margin
:
200px
auto
30px
;
margin
:
200px
auto
30px
;
}
}
</
style
>
</
style
>
src/pages/supply/bid/joinProject/bidSure/noticeSee.vue
View file @
96b199b3
<
template
>
<
template
>
<div>
<div>
<div
class=
"content-head"
>
<div
class=
"content-head"
>
<dataBreadcrumb
:breads=
"breads"
></dataBreadcrumb>
<dataBreadcrumb
:breads=
"breads"
></dataBreadcrumb>
<h3>
查看中标公告
</h3>
<h3>
查看中标公告
</h3>
<h5>
查看中标公告
</h5>
<h5>
查看中标公告
</h5>
</div>
</div>
<div
class=
"content"
>
<div
class=
"content"
>
<div
class=
"flex-arround"
>
<div
class=
"flex-arround"
>
<div>
项目编号:
{{
projectCode
}}
</div>
<div>
项目编号:
{{
projectCode
}}
</div>
<div>
项目名称:
{{
projectName
}}
</div>
<div>
项目名称:
{{
projectName
}}
</div>
<div
v-if=
"state"
>
发布时间:
{{
detail
.
createTime
}}
</div>
<div
v-if=
"state"
>
发布时间:
{{
detail
.
createTime
}}
</div>
</div>
</div>
<div
class=
'detail1'
v-if=
"state"
>
<div
class=
"detail1"
v-if=
"state"
>
<div
v-html=
"detail.content"
></div>
<div
v-html=
"detail.content"
></div>
<div
class=
"enclosure"
v-if=
"detail.accessoryDOList"
>
<div
class=
"enclosure flex-item"
>
<ul>
<div
style=
"margin-right: 30px"
>
相关附件
</div>
<li
v-for=
"(item,i) in detail.accessoryDOList"
:key=
"i"
>
<ul
v-if=
"detail.accessoryDOList.length>0"
>
<a
href=
"item.accessoryUrl"
>
item.fileName
</a>
<li
v-for=
"(item, i) in detail.accessoryDOList"
:key=
"i"
>
</li>
<a
href=
"item.accessoryUrl"
>
{{
item
.
fileName
}}
</a>
</ul>
</li>
</div>
</ul>
<div
class=
"enclosure"
>
相关附件:空
</div>
<div
v-else
>
空
</div>
</div>
</div>
<div
v-else
class=
"detail1"
>
</div>
未找到该公告详情!
<div
v-else
class=
"detail1"
>
未找到该公告详情!
</div>
</div>
<div
class=
"centerButton"
>
<div
class=
"centerButton"
>
<el-button
@
click=
"back"
>
返回
</el-button>
<el-button
@
click=
"back"
>
返回
</el-button>
</div>
</div>
</div>
</div>
</div>
</div>
</
template
>
</
template
>
<
script
>
<
script
>
import
{
import
{
noticeWin
}
from
'@api/supply/bid'
;
noticeWin
import
dataBreadcrumb
from
'@components/dataBreadcrumb.vue'
;
}
from
'@api/supply/bid'
export
default
{
import
dataBreadcrumb
from
'@components/dataBreadcrumb.vue'
components
:
{
export
default
{
dataBreadcrumb
components
:
{
},
dataBreadcrumb
data
()
{
},
return
{
data
()
{
breads
:
[
'投标管理 '
,
'我参加的项目'
,
'工作台'
],
return
{
projectCode
:
''
,
breads
:
[
'投标管理 '
,
'我参加的项目'
,
'工作台'
],
projectName
:
''
,
projectCode
:
""
,
state
:
true
,
projectName
:
""
,
detail
:
''
state
:
true
,
};
detail
:
""
},
}
methods
:
{
},
back
()
{
methods
:
{
this
.
$router
.
go
(
-
1
);
back
()
{
},
this
.
$router
.
go
(
-
1
)
async
getnoticeWin
()
{
},
try
{
async
getnoticeWin
()
{
let
projectId
=
localStorage
.
getItem
(
'projectId'
);
try
{
const
{
data
,
code
}
=
await
noticeWin
(
projectId
);
let
projectId
=
localStorage
.
getItem
(
"projectId"
)
if
(
code
==
200
)
{
const
{
console
.
log
(
data
);
data
,
this
.
detail
=
data
;
code
}
else
{
}
=
await
noticeWin
(
projectId
)
this
.
state
=
false
;
if
(
code
==
200
)
{
}
console
.
log
(
data
)
}
catch
(
err
)
{
this
.
detail
=
data
console
.
log
(
err
);
}
else
{
}
this
.
state
=
false
}
}
},
}
catch
(
err
)
{
created
()
{
console
.
log
(
err
)
this
.
projectCode
=
localStorage
.
getItem
(
'projectCode'
);
}
this
.
projectName
=
localStorage
.
getItem
(
'projectName'
);
}
this
.
getnoticeWin
();
},
}
created
()
{
};
this
.
projectCode
=
localStorage
.
getItem
(
"projectCode"
)
this
.
projectName
=
localStorage
.
getItem
(
"projectName"
)
this
.
getnoticeWin
()
}
}
</
script
>
</
script
>
<
style
scoped
>
<
style
scoped
>
.detail1
{
.detail1
{
background
:
#fff
;
background
:
#fff
;
margin-top
:
30px
;
}
.content
>
h1
{
margin-top
:
30px
;
text-align
:
center
;
}
margin-top
:
20px
;
margin-bottom
:
40px
;
font-weight
:
bold
;
}
.content
>
.img
{
.content
>
h1
{
width
:
600px
;
text-align
:
center
;
margin
:
0
auto
margin-top
:
20px
;
}
margin-bottom
:
40px
;
font-weight
:
bold
;
}
.enclosure
{
.content
>
.img
{
margin
:
50px
0
;
width
:
600px
;
}
margin
:
0
auto
;
}
.enclosure
{
margin
:
50px
0
;
}
</
style
>
</
style
>
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