14 changed files with 3201 additions and 146 deletions
@ -1,3 +1,528 @@ |
|||||
<template> |
<template> |
||||
<div>验收</div> |
<!-- 合同验收--> |
||||
|
<div class="app-container"> |
||||
|
<el-form |
||||
|
:model="queryParams" |
||||
|
ref="queryForm" |
||||
|
:inline="true" |
||||
|
v-show="showSearch" |
||||
|
label-width="68px" |
||||
|
> |
||||
|
<el-form-item label="验收时间" prop="acceptanceTime"> |
||||
|
<el-date-picker |
||||
|
clearable |
||||
|
size="small" |
||||
|
style="width: 200px" |
||||
|
v-model="queryParams.acceptanceTime" |
||||
|
type="date" |
||||
|
value-format="yyyy-MM-dd" |
||||
|
placeholder="选择验收时间" |
||||
|
> |
||||
|
</el-date-picker> |
||||
|
</el-form-item> |
||||
|
<!-- <el-form-item label="地点" prop="acceptanceAddress"> |
||||
|
<el-input |
||||
|
v-model="queryParams.data.acceptanceAddress" |
||||
|
placeholder="请输入地点" |
||||
|
clearable |
||||
|
size="small" |
||||
|
@keyup.enter.native="handleQuery" |
||||
|
><el-button |
||||
|
type="primary" |
||||
|
slot="append" |
||||
|
icon="el-icon-search" |
||||
|
size="small" |
||||
|
@click="handleQuery" |
||||
|
></el-button> |
||||
|
</el-input> |
||||
|
</el-form-item> --> |
||||
|
<el-form-item label="验收专家" prop="acceptanceExpert"> |
||||
|
<el-input |
||||
|
v-model="queryParams.data.acceptanceExpert" |
||||
|
placeholder="请输入验收专家" |
||||
|
clearable |
||||
|
size="small" |
||||
|
@keyup.enter.native="handleQuery" |
||||
|
><el-button |
||||
|
type="primary" |
||||
|
slot="append" |
||||
|
icon="el-icon-search" |
||||
|
size="small" |
||||
|
@click="handleQuery" |
||||
|
></el-button> |
||||
|
</el-input> |
||||
|
</el-form-item> |
||||
|
|
||||
|
<el-form-item> |
||||
|
<!-- <el-button |
||||
|
type="cyan" |
||||
|
icon="el-icon-search" |
||||
|
size="mini" |
||||
|
@click="handleQuery" |
||||
|
>搜索</el-button |
||||
|
> --> |
||||
|
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery" |
||||
|
>重置</el-button |
||||
|
> |
||||
|
</el-form-item> |
||||
|
</el-form> |
||||
|
|
||||
|
<el-row :gutter="10" class="mb8"> |
||||
|
<el-col :span="1.5"> |
||||
|
<el-button |
||||
|
type="primary" |
||||
|
icon="el-icon-plus" |
||||
|
size="mini" |
||||
|
@click="handleAdd" |
||||
|
v-hasPermi="['build:acc:add']" |
||||
|
>新增</el-button |
||||
|
> |
||||
|
</el-col> |
||||
|
<el-col :span="1.5"> |
||||
|
<el-button |
||||
|
type="success" |
||||
|
icon="el-icon-edit" |
||||
|
size="mini" |
||||
|
:disabled="single" |
||||
|
@click="handleUpdate" |
||||
|
v-hasPermi="['build:acc:edit']" |
||||
|
>修改</el-button |
||||
|
> |
||||
|
</el-col> |
||||
|
<el-col :span="1.5"> |
||||
|
<el-button |
||||
|
type="danger" |
||||
|
icon="el-icon-delete" |
||||
|
size="mini" |
||||
|
:disabled="multiple" |
||||
|
@click="handleDelete" |
||||
|
v-hasPermi="['build:acc:remove']" |
||||
|
>删除</el-button |
||||
|
> |
||||
|
</el-col> |
||||
|
<right-toolbar |
||||
|
:showSearch.sync="showSearch" |
||||
|
@queryTable="getList" |
||||
|
></right-toolbar> |
||||
|
</el-row> |
||||
|
|
||||
|
<el-table |
||||
|
v-loading="loading" |
||||
|
:data="accList" |
||||
|
@selection-change="handleSelectionChange" |
||||
|
> |
||||
|
<el-table-column type="selection" width="55" align="center" /> |
||||
|
<el-table-column label="序号" type="index" width="50" align="center" /> |
||||
|
|
||||
|
<el-table-column |
||||
|
label="验收时间" |
||||
|
align="center" |
||||
|
prop="acceptanceTime" |
||||
|
min-width="120" |
||||
|
> |
||||
|
<template slot-scope="scope"> |
||||
|
<span>{{ parseTime(scope.row.acceptanceTime, "{y}-{m}-{d}") }}</span> |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
<el-table-column |
||||
|
label="地点" |
||||
|
align="center" |
||||
|
prop="acceptanceAddress" |
||||
|
min-width="120" |
||||
|
/> |
||||
|
<el-table-column |
||||
|
label="验收专家" |
||||
|
align="center" |
||||
|
prop="acceptanceExpert" |
||||
|
min-width="120" |
||||
|
/> |
||||
|
<el-table-column |
||||
|
label="验收意见" |
||||
|
align="center" |
||||
|
prop="acceptanceOpinions" |
||||
|
min-width="120" |
||||
|
/> |
||||
|
<el-table-column |
||||
|
label="操作" |
||||
|
align="center" |
||||
|
class-name="small-padding fixed-width" |
||||
|
min-width="180" |
||||
|
> |
||||
|
<template slot-scope="scope"> |
||||
|
<el-button |
||||
|
size="mini" |
||||
|
type="text" |
||||
|
icon="el-icon-view" |
||||
|
@click="viewInfo(scope.row)" |
||||
|
>查看</el-button |
||||
|
> |
||||
|
<el-button |
||||
|
size="mini" |
||||
|
type="text" |
||||
|
icon="el-icon-edit" |
||||
|
@click="handleUpdate(scope.row)" |
||||
|
v-hasPermi="['build:acc:edit']" |
||||
|
>修改</el-button |
||||
|
> |
||||
|
<el-button |
||||
|
size="mini" |
||||
|
type="text" |
||||
|
icon="el-icon-delete" |
||||
|
@click="handleDelete(scope.row)" |
||||
|
v-hasPermi="['build:acc:remove']" |
||||
|
>删除</el-button |
||||
|
> |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
</el-table> |
||||
|
|
||||
|
<pagination |
||||
|
v-show="total > 0" |
||||
|
:total="total" |
||||
|
:page.sync="queryParams.pageNum" |
||||
|
:limit.sync="queryParams.pageSize" |
||||
|
@pagination="getList" |
||||
|
/> |
||||
|
|
||||
|
<!-- 添加或修改合同验收对话框 --> |
||||
|
<el-dialog |
||||
|
:title="title" |
||||
|
:visible.sync="open" |
||||
|
width="1200px" |
||||
|
append-to-body |
||||
|
> |
||||
|
<el-form ref="form" :model="form" :rules="rules" label-width="80px"> |
||||
|
<el-form-item label="验收时间" prop="acceptanceTime"> |
||||
|
<el-date-picker |
||||
|
clearable |
||||
|
size="small" |
||||
|
style="width: 100%" |
||||
|
v-model="form.acceptanceTime" |
||||
|
type="date" |
||||
|
value-format="yyyy-MM-dd" |
||||
|
placeholder="选择验收时间" |
||||
|
> |
||||
|
</el-date-picker> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="地点" prop="acceptanceAddress"> |
||||
|
<el-input v-model="form.acceptanceAddress" placeholder="请输入地点" /> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="验收专家" prop="acceptanceExpert"> |
||||
|
<el-input |
||||
|
v-model="form.acceptanceExpert" |
||||
|
placeholder="请输入验收专家" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="验收意见" prop="acceptanceOpinions"> |
||||
|
<el-input |
||||
|
v-model="form.acceptanceOpinions" |
||||
|
placeholder="请输入验收意见" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
</el-form> |
||||
|
<div slot="footer" class="dialog-footer"> |
||||
|
<el-button type="primary" @click="submitForm">确 定</el-button> |
||||
|
<el-button @click="cancel">取 消</el-button> |
||||
|
</div> |
||||
|
</el-dialog> |
||||
|
|
||||
|
<!--查看 --> |
||||
|
<el-dialog |
||||
|
:title="viewTitle" |
||||
|
:visible.sync="viewOpen" |
||||
|
width="1200px" |
||||
|
append-to-body |
||||
|
@close="closeView" |
||||
|
> |
||||
|
<!-- 分包合同信息 --> |
||||
|
<div class="infoTitle">分包合同信息</div> |
||||
|
<div class="draLine"></div> |
||||
|
<div class="content"> |
||||
|
<el-descriptions |
||||
|
class="margin-top" |
||||
|
:column="2" |
||||
|
border |
||||
|
:labelStyle="{ |
||||
|
'text-align': 'left', |
||||
|
width: '180px', |
||||
|
height: '50px', |
||||
|
}" |
||||
|
:contentStyle="{}" |
||||
|
> |
||||
|
<el-descriptions-item> |
||||
|
<template slot="label"> 验收时间 </template> |
||||
|
{{ this.acceptanceMsg.acceptanceTime }} |
||||
|
</el-descriptions-item> |
||||
|
<el-descriptions-item> |
||||
|
<template slot="label"> 地点 </template> |
||||
|
{{ this.acceptanceMsg.acceptanceAddress }} |
||||
|
</el-descriptions-item> |
||||
|
<el-descriptions-item> |
||||
|
<template slot="label"> 验收专家 </template> |
||||
|
{{ this.acceptanceMsg.acceptanceExpert }} |
||||
|
</el-descriptions-item> |
||||
|
<el-descriptions-item> |
||||
|
<template slot="label"> 验收意见 </template> |
||||
|
{{ this.acceptanceMsg.acceptanceOpinions }} |
||||
|
</el-descriptions-item> |
||||
|
</el-descriptions> |
||||
|
</div> |
||||
|
</el-dialog> |
||||
|
</div> |
||||
</template> |
</template> |
||||
|
|
||||
|
<script> |
||||
|
import { |
||||
|
listAcc, |
||||
|
getAcc, |
||||
|
delAcc, |
||||
|
addAcc, |
||||
|
updateAcc, |
||||
|
exportAcc, |
||||
|
} from "@/api/build/acc"; |
||||
|
|
||||
|
export default { |
||||
|
name: "Acc", |
||||
|
props: ["contractNumber"], |
||||
|
data() { |
||||
|
return { |
||||
|
// 遮罩层 |
||||
|
loading: true, |
||||
|
// 选中数组 |
||||
|
ids: [], |
||||
|
// 非单个禁用 |
||||
|
single: true, |
||||
|
// 非多个禁用 |
||||
|
multiple: true, |
||||
|
// 显示搜索条件 |
||||
|
showSearch: true, |
||||
|
// 总条数 |
||||
|
total: 0, |
||||
|
// 合同验收表格数据 |
||||
|
accList: [], |
||||
|
// 弹出层标题 |
||||
|
title: "", |
||||
|
viewTitle: "", |
||||
|
// 是否显示弹出层 |
||||
|
open: false, |
||||
|
viewOpen: false, |
||||
|
// 查询参数 |
||||
|
queryParams: { |
||||
|
pageNum: 1, |
||||
|
pageSize: 10, |
||||
|
ids: null, |
||||
|
data: { |
||||
|
acceptanceTime: null, |
||||
|
acceptanceAddress: null, |
||||
|
acceptanceExpert: null, |
||||
|
acceptanceOpinions: null, |
||||
|
contractNumber: null, |
||||
|
createUid: null, |
||||
|
createTime: null, |
||||
|
updateUid: null, |
||||
|
updateTime: null, |
||||
|
owerDept: null, |
||||
|
}, |
||||
|
}, |
||||
|
// 表单参数 |
||||
|
form: {}, |
||||
|
// 表单校验 |
||||
|
rules: {}, |
||||
|
acceptanceMsg: {}, |
||||
|
}; |
||||
|
}, |
||||
|
created() { |
||||
|
this.getList(); |
||||
|
}, |
||||
|
// 父组件 利用axios请求得到的值 传送到子组件,要监听,否则初始渲染时为空 |
||||
|
watch: { |
||||
|
contractNumber: function (n, o) { |
||||
|
this.contractNumber = n; |
||||
|
// console.log("contractNumber", this.contractNumber); |
||||
|
this.getList(); |
||||
|
}, |
||||
|
}, |
||||
|
methods: { |
||||
|
/** 查询合同验收列表 */ |
||||
|
getList() { |
||||
|
this.loading = true; |
||||
|
if (this.$route.query.baseDataId) { |
||||
|
this.queryParams.data.contractNumber = this.contractNumber; |
||||
|
} |
||||
|
listAcc(this.queryParams).then((response) => { |
||||
|
this.accList = response.records; |
||||
|
this.total = response.total; |
||||
|
this.loading = false; |
||||
|
}); |
||||
|
}, |
||||
|
// 取消按钮 |
||||
|
cancel() { |
||||
|
this.open = false; |
||||
|
this.reset(); |
||||
|
}, |
||||
|
// 表单重置 |
||||
|
reset() { |
||||
|
this.form = { |
||||
|
id: null, |
||||
|
acceptanceTime: null, |
||||
|
acceptanceAddress: null, |
||||
|
acceptanceExpert: null, |
||||
|
acceptanceOpinions: null, |
||||
|
contractNumber: null, |
||||
|
createUid: null, |
||||
|
createTime: null, |
||||
|
updateUid: null, |
||||
|
updateTime: null, |
||||
|
owerDept: null, |
||||
|
}; |
||||
|
this.resetForm("form"); |
||||
|
}, |
||||
|
// 查询表单重置 |
||||
|
resetQueryForm() { |
||||
|
this.queryParams = { |
||||
|
pageNum: 1, |
||||
|
pageSize: 10, |
||||
|
data: { |
||||
|
id: null, |
||||
|
acceptanceTime: null, |
||||
|
acceptanceAddress: null, |
||||
|
acceptanceExpert: null, |
||||
|
acceptanceOpinions: null, |
||||
|
contractNumber: null, |
||||
|
createUid: null, |
||||
|
createTime: null, |
||||
|
updateUid: null, |
||||
|
updateTime: null, |
||||
|
owerDept: null, |
||||
|
}, |
||||
|
}; |
||||
|
this.resetForm("form"); |
||||
|
}, |
||||
|
/** 搜索按钮操作 */ |
||||
|
handleQuery() { |
||||
|
this.queryParams.pageNum = 1; |
||||
|
this.getList(); |
||||
|
}, |
||||
|
/** 重置按钮操作 */ |
||||
|
resetQuery() { |
||||
|
this.resetQueryForm(); |
||||
|
this.handleQuery(); |
||||
|
}, |
||||
|
// 多选框选中数据 |
||||
|
handleSelectionChange(selection) { |
||||
|
this.ids = selection.map((item) => item.id); |
||||
|
this.single = selection.length !== 1; |
||||
|
this.multiple = !selection.length; |
||||
|
}, |
||||
|
/** 新增按钮操作 */ |
||||
|
handleAdd() { |
||||
|
this.reset(); |
||||
|
this.open = true; |
||||
|
this.title = "添加合同验收"; |
||||
|
}, |
||||
|
/** 修改按钮操作 */ |
||||
|
handleUpdate(row) { |
||||
|
this.reset(); |
||||
|
const id = row.id || this.ids; |
||||
|
getAcc(id).then((response) => { |
||||
|
this.form = response.data; |
||||
|
this.open = true; |
||||
|
this.title = "修改合同验收"; |
||||
|
}); |
||||
|
}, |
||||
|
// 查看信息 |
||||
|
viewInfo(row) { |
||||
|
this.viewTitle = "查看合同变更信息"; |
||||
|
this.acceptanceMsg = row; |
||||
|
console.log("acceptanceMsg", row); |
||||
|
this.viewOpen = true; |
||||
|
}, |
||||
|
// 关闭弹窗 |
||||
|
closeView() { |
||||
|
this.acceptanceMsg = {}; |
||||
|
}, |
||||
|
/** 提交按钮 */ |
||||
|
submitForm() { |
||||
|
this.$refs["form"].validate((valid) => { |
||||
|
if (valid) { |
||||
|
if (this.form.id != null) { |
||||
|
updateAcc(this.form).then((response) => { |
||||
|
if (response.code === 200) { |
||||
|
this.msgSuccess("修改成功"); |
||||
|
this.open = false; |
||||
|
this.getList(); |
||||
|
} |
||||
|
}); |
||||
|
} else { |
||||
|
this.form.contractNumber = this.contractNumber; |
||||
|
addAcc(this.form).then((response) => { |
||||
|
if (response.code === 200) { |
||||
|
this.msgSuccess("新增成功"); |
||||
|
this.open = false; |
||||
|
this.getList(); |
||||
|
} |
||||
|
}); |
||||
|
} |
||||
|
} |
||||
|
}); |
||||
|
}, |
||||
|
/** 删除按钮操作 */ |
||||
|
handleDelete(row) { |
||||
|
const ids = row.id || this.ids; |
||||
|
if (ids) { |
||||
|
this.$confirm("是否删除选中的数据?", "警告", { |
||||
|
confirmButtonText: "确定", |
||||
|
cancelButtonText: "取消", |
||||
|
type: "warning", |
||||
|
}) |
||||
|
.then(function () { |
||||
|
return delAcc(ids); |
||||
|
}) |
||||
|
.then(() => { |
||||
|
this.getList(); |
||||
|
this.msgSuccess("删除成功"); |
||||
|
}) |
||||
|
.catch(function () {}); |
||||
|
} else { |
||||
|
this.$message.warning("请选择要删除的数据!!"); |
||||
|
} |
||||
|
}, |
||||
|
}, |
||||
|
}; |
||||
|
</script> |
||||
|
|
||||
|
<style scoped lang="scss"> |
||||
|
::v-deep { |
||||
|
.el-dialog { |
||||
|
// margin-top: 2vh !important; |
||||
|
height: 450px; |
||||
|
overflow-y: auto; |
||||
|
.content { |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
align-items: center; |
||||
|
.margin-top { |
||||
|
width: 95%; |
||||
|
border-left: 1px solid #f0f0f0; |
||||
|
border-right: 1px solid #f0f0f0; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
.el-dialog__title { |
||||
|
font-weight: 700; |
||||
|
font-size: 28px; |
||||
|
// font-size: 24px; |
||||
|
// line-height: 32px; |
||||
|
} |
||||
|
.draLine { |
||||
|
width: 100%; |
||||
|
border: 2px solid #000; |
||||
|
margin: 10px 0 20px 0; |
||||
|
} |
||||
|
.infoTitle { |
||||
|
color: #000; |
||||
|
font-size: 20px; |
||||
|
font-weight: 700; |
||||
|
} |
||||
|
} |
||||
|
</style> |
||||
|
@ -1,3 +1,604 @@ |
|||||
<template> |
<template> |
||||
<div>变更</div> |
<!-- 合同变更--> |
||||
|
<div class="app-container"> |
||||
|
<el-form |
||||
|
:model="queryParams" |
||||
|
ref="queryForm" |
||||
|
:inline="true" |
||||
|
v-show="showSearch" |
||||
|
label-width="68px" |
||||
|
> |
||||
|
<el-form-item label="变更原因" prop="changeReason"> |
||||
|
<el-input |
||||
|
v-model="queryParams.data.changeReason" |
||||
|
placeholder="请输入变更原因" |
||||
|
clearable |
||||
|
size="small" |
||||
|
@keyup.enter.native="handleQuery" |
||||
|
><el-button |
||||
|
type="primary" |
||||
|
slot="append" |
||||
|
icon="el-icon-search" |
||||
|
size="small" |
||||
|
@click="handleQuery" |
||||
|
></el-button> |
||||
|
</el-input> |
||||
|
</el-form-item> |
||||
|
|
||||
|
<el-form-item> |
||||
|
<!-- <el-button |
||||
|
type="cyan" |
||||
|
icon="el-icon-search" |
||||
|
size="mini" |
||||
|
@click="handleQuery" |
||||
|
>搜索</el-button |
||||
|
> --> |
||||
|
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery" |
||||
|
>重置</el-button |
||||
|
> |
||||
|
</el-form-item> |
||||
|
</el-form> |
||||
|
|
||||
|
<el-row :gutter="10" class="mb8"> |
||||
|
<el-col :span="1.5"> |
||||
|
<el-button |
||||
|
type="primary" |
||||
|
icon="el-icon-plus" |
||||
|
size="mini" |
||||
|
@click="handleAdd" |
||||
|
v-hasPermi="['build:change:add']" |
||||
|
>新增</el-button |
||||
|
> |
||||
|
</el-col> |
||||
|
<el-col :span="1.5"> |
||||
|
<el-button |
||||
|
type="success" |
||||
|
icon="el-icon-edit" |
||||
|
size="mini" |
||||
|
:disabled="single" |
||||
|
@click="handleUpdate" |
||||
|
v-hasPermi="['build:change:edit']" |
||||
|
>修改</el-button |
||||
|
> |
||||
|
</el-col> |
||||
|
<el-col :span="1.5"> |
||||
|
<el-button |
||||
|
type="danger" |
||||
|
icon="el-icon-delete" |
||||
|
size="mini" |
||||
|
:disabled="multiple" |
||||
|
@click="handleDelete" |
||||
|
v-hasPermi="['build:change:remove']" |
||||
|
>删除</el-button |
||||
|
> |
||||
|
</el-col> |
||||
|
<right-toolbar |
||||
|
:showSearch.sync="showSearch" |
||||
|
@queryTable="getList" |
||||
|
></right-toolbar> |
||||
|
</el-row> |
||||
|
|
||||
|
<el-table |
||||
|
v-loading="loading" |
||||
|
:data="changeList" |
||||
|
@selection-change="handleSelectionChange" |
||||
|
> |
||||
|
<el-table-column type="selection" width="55" align="center" fixed /> |
||||
|
<el-table-column |
||||
|
label="序号" |
||||
|
type="index" |
||||
|
width="50" |
||||
|
align="center" |
||||
|
fixed |
||||
|
/> |
||||
|
|
||||
|
<el-table-column |
||||
|
label="变更原因" |
||||
|
align="center" |
||||
|
prop="changeReason" |
||||
|
min-width="120" |
||||
|
/> |
||||
|
<el-table-column |
||||
|
label="变更内容" |
||||
|
align="center" |
||||
|
prop="changeContent" |
||||
|
min-width="120" |
||||
|
/> |
||||
|
<el-table-column |
||||
|
label="变更时间" |
||||
|
align="center" |
||||
|
prop="changeTime" |
||||
|
min-width="120" |
||||
|
> |
||||
|
<template slot-scope="scope"> |
||||
|
<span>{{ parseTime(scope.row.changeTime, "{y}-{m}-{d}") }}</span> |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
<el-table-column |
||||
|
label="变更申请信息" |
||||
|
align="center" |
||||
|
prop="changeApplicationInfo" |
||||
|
min-width="120" |
||||
|
/> |
||||
|
<el-table-column |
||||
|
label="变更批复信息" |
||||
|
align="center" |
||||
|
prop="changeApprovalInfo" |
||||
|
min-width="120" |
||||
|
/> |
||||
|
<el-table-column |
||||
|
label="合同变更信息" |
||||
|
align="center" |
||||
|
prop="contractChangeInfo" |
||||
|
min-width="120" |
||||
|
/> |
||||
|
<el-table-column |
||||
|
label="变更人" |
||||
|
align="center" |
||||
|
prop="changePerson" |
||||
|
min-width="120" |
||||
|
/> |
||||
|
<el-table-column |
||||
|
label="变更人联系方式" |
||||
|
align="center" |
||||
|
prop="changePersonPhone" |
||||
|
min-width="120" |
||||
|
/> |
||||
|
|
||||
|
<el-table-column |
||||
|
label="操作" |
||||
|
align="center" |
||||
|
class-name="small-padding fixed-width" |
||||
|
min-width="180" |
||||
|
fixed="right" |
||||
|
> |
||||
|
<template slot-scope="scope"> |
||||
|
<el-button |
||||
|
size="mini" |
||||
|
type="text" |
||||
|
icon="el-icon-view" |
||||
|
@click="viewInfo(scope.row)" |
||||
|
>查看</el-button |
||||
|
> |
||||
|
<el-button |
||||
|
size="mini" |
||||
|
type="text" |
||||
|
icon="el-icon-edit" |
||||
|
@click="handleUpdate(scope.row)" |
||||
|
v-hasPermi="['build:change:edit']" |
||||
|
>修改</el-button |
||||
|
> |
||||
|
<el-button |
||||
|
size="mini" |
||||
|
type="text" |
||||
|
icon="el-icon-delete" |
||||
|
@click="handleDelete(scope.row)" |
||||
|
v-hasPermi="['build:change:remove']" |
||||
|
>删除</el-button |
||||
|
> |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
</el-table> |
||||
|
|
||||
|
<pagination |
||||
|
v-show="total > 0" |
||||
|
:total="total" |
||||
|
:page.sync="queryParams.pageNum" |
||||
|
:limit.sync="queryParams.pageSize" |
||||
|
@pagination="getList" |
||||
|
/> |
||||
|
|
||||
|
<!-- 添加或修改合同变更信息对话框 --> |
||||
|
<el-dialog |
||||
|
:title="title" |
||||
|
:visible.sync="open" |
||||
|
width="1200px" |
||||
|
append-to-body |
||||
|
> |
||||
|
<el-form ref="form" :model="form" :rules="rules" label-width="110px"> |
||||
|
<el-form-item label="变更原因" prop="changeReason"> |
||||
|
<el-input v-model="form.changeReason" placeholder="请输入变更原因" /> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="变更内容" prop="changeContent"> |
||||
|
<el-input v-model="form.changeContent" placeholder="请输入变更内容" /> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="变更时间" prop="changeTime"> |
||||
|
<el-date-picker |
||||
|
clearable |
||||
|
size="small" |
||||
|
style="width: 100%" |
||||
|
v-model="form.changeTime" |
||||
|
type="date" |
||||
|
value-format="yyyy-MM-dd" |
||||
|
placeholder="选择变更时间" |
||||
|
> |
||||
|
</el-date-picker> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="变更申请信息" prop="changeApplicationInfo"> |
||||
|
<el-input |
||||
|
v-model="form.changeApplicationInfo" |
||||
|
placeholder="请输入变更申请信息" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="变更批复信息" prop="changeApprovalInfo"> |
||||
|
<el-input |
||||
|
v-model="form.changeApprovalInfo" |
||||
|
placeholder="请输入变更批复信息" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="合同变更信息" prop="contractChangeInfo"> |
||||
|
<el-input |
||||
|
v-model="form.contractChangeInfo" |
||||
|
placeholder="请输入合同变更信息" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="变更人" prop="changePerson"> |
||||
|
<el-input v-model="form.changePerson" placeholder="请输入变更人" /> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="变更人联系方式" prop="changePersonPhone"> |
||||
|
<el-input |
||||
|
v-model="form.changePersonPhone" |
||||
|
placeholder="请输入变更人联系方式" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
</el-form> |
||||
|
<div slot="footer" class="dialog-footer"> |
||||
|
<el-button type="primary" @click="submitForm">确 定</el-button> |
||||
|
<el-button @click="cancel">取 消</el-button> |
||||
|
</div> |
||||
|
</el-dialog> |
||||
|
|
||||
|
<!--查看 --> |
||||
|
<el-dialog |
||||
|
:title="viewTitle" |
||||
|
:visible.sync="viewOpen" |
||||
|
width="1200px" |
||||
|
append-to-body |
||||
|
@close="closeView" |
||||
|
> |
||||
|
<!-- 分包合同信息 --> |
||||
|
<div class="infoTitle">分包合同信息</div> |
||||
|
<div class="draLine"></div> |
||||
|
<div class="content"> |
||||
|
<el-descriptions |
||||
|
class="margin-top" |
||||
|
:column="2" |
||||
|
border |
||||
|
:labelStyle="{ |
||||
|
'text-align': 'left', |
||||
|
width: '180px', |
||||
|
height: '50px', |
||||
|
}" |
||||
|
:contentStyle="{}" |
||||
|
> |
||||
|
<el-descriptions-item> |
||||
|
<template slot="label"> 变更原因 </template> |
||||
|
{{ this.alterMsg.changeReason }} |
||||
|
</el-descriptions-item> |
||||
|
<el-descriptions-item> |
||||
|
<template slot="label"> 变更内容 </template> |
||||
|
{{ this.alterMsg.changeContent }} |
||||
|
</el-descriptions-item> |
||||
|
<el-descriptions-item> |
||||
|
<template slot="label"> 变更时间 </template> |
||||
|
{{ this.alterMsg.changeTime }} |
||||
|
</el-descriptions-item> |
||||
|
<el-descriptions-item> |
||||
|
<template slot="label"> 变更申请信息 </template> |
||||
|
{{ this.alterMsg.changeApplicationInfo }} |
||||
|
</el-descriptions-item> |
||||
|
<el-descriptions-item> |
||||
|
<template slot="label"> 变更批复信息 </template> |
||||
|
{{ this.alterMsg.changeApprovalInfo }} |
||||
|
</el-descriptions-item> |
||||
|
<el-descriptions-item> |
||||
|
<template slot="label"> 合同变更信息 </template> |
||||
|
{{ this.alterMsg.contractChangeInfo }} |
||||
|
</el-descriptions-item> |
||||
|
<el-descriptions-item> |
||||
|
<template slot="label"> 变更人 </template> |
||||
|
{{ this.alterMsg.changePerson }} |
||||
|
</el-descriptions-item> |
||||
|
<el-descriptions-item> |
||||
|
<template slot="label"> 变更人联系方式 </template> |
||||
|
{{ this.alterMsg.changePersonPhone }} |
||||
|
</el-descriptions-item> |
||||
|
</el-descriptions> |
||||
|
</div> |
||||
|
</el-dialog> |
||||
|
</div> |
||||
</template> |
</template> |
||||
|
|
||||
|
<script> |
||||
|
import { |
||||
|
listChange, |
||||
|
getChange, |
||||
|
delChange, |
||||
|
addChange, |
||||
|
updateChange, |
||||
|
exportChange, |
||||
|
} from "@/api/build/contractChange"; |
||||
|
|
||||
|
export default { |
||||
|
name: "Change", |
||||
|
props: ["contractNumber"], |
||||
|
data() { |
||||
|
return { |
||||
|
// 遮罩层 |
||||
|
loading: true, |
||||
|
// 选中数组 |
||||
|
ids: [], |
||||
|
// 非单个禁用 |
||||
|
single: true, |
||||
|
// 非多个禁用 |
||||
|
multiple: true, |
||||
|
// 显示搜索条件 |
||||
|
showSearch: true, |
||||
|
// 总条数 |
||||
|
total: 0, |
||||
|
// 合同变更信息表格数据 |
||||
|
changeList: [], |
||||
|
// 弹出层标题 |
||||
|
title: "", |
||||
|
viewTitle: "", |
||||
|
// 是否显示弹出层 |
||||
|
open: false, |
||||
|
viewOpen: false, |
||||
|
// 查询参数 |
||||
|
queryParams: { |
||||
|
pageNum: 1, |
||||
|
pageSize: 10, |
||||
|
ids: null, |
||||
|
data: { |
||||
|
changeReason: null, |
||||
|
changeContent: null, |
||||
|
changeTime: null, |
||||
|
changeApplicationInfo: null, |
||||
|
changeApprovalInfo: null, |
||||
|
contractChangeInfo: null, |
||||
|
changePerson: null, |
||||
|
changePersonPhone: null, |
||||
|
contractNumber: null, |
||||
|
createUid: null, |
||||
|
createTime: null, |
||||
|
updateUid: null, |
||||
|
updateTime: null, |
||||
|
owerDept: null, |
||||
|
}, |
||||
|
}, |
||||
|
// 表单参数 |
||||
|
form: {}, |
||||
|
// 表单校验 |
||||
|
rules: {}, |
||||
|
alterMsg: {}, |
||||
|
}; |
||||
|
}, |
||||
|
created() { |
||||
|
this.getList(); |
||||
|
}, |
||||
|
// 父组件 利用axios请求得到的值 传送到子组件,要监听,否则初始渲染时为空 |
||||
|
watch: { |
||||
|
contractNumber: function (n, o) { |
||||
|
this.contractNumber = n; |
||||
|
// console.log("contractNumber", this.contractNumber); |
||||
|
this.getList(); |
||||
|
}, |
||||
|
}, |
||||
|
methods: { |
||||
|
/** 查询合同变更信息列表 */ |
||||
|
getList() { |
||||
|
this.loading = true; |
||||
|
if (this.$route.query.baseDataId) { |
||||
|
this.queryParams.data.contractNumber = this.contractNumber; |
||||
|
} |
||||
|
listChange(this.queryParams).then((response) => { |
||||
|
this.changeList = response.records; |
||||
|
// console.log("response.records", response.records); |
||||
|
this.total = response.total; |
||||
|
this.loading = false; |
||||
|
}); |
||||
|
}, |
||||
|
// 取消按钮 |
||||
|
cancel() { |
||||
|
this.open = false; |
||||
|
this.reset(); |
||||
|
}, |
||||
|
// 表单重置 |
||||
|
reset() { |
||||
|
this.form = { |
||||
|
id: null, |
||||
|
changeReason: null, |
||||
|
changeContent: null, |
||||
|
changeTime: null, |
||||
|
changeApplicationInfo: null, |
||||
|
changeApprovalInfo: null, |
||||
|
contractChangeInfo: null, |
||||
|
changePerson: null, |
||||
|
changePersonPhone: null, |
||||
|
contractNumber: null, |
||||
|
createUid: null, |
||||
|
createTime: null, |
||||
|
updateUid: null, |
||||
|
updateTime: null, |
||||
|
owerDept: null, |
||||
|
}; |
||||
|
this.resetForm("form"); |
||||
|
}, |
||||
|
// 查询表单重置 |
||||
|
resetQueryForm() { |
||||
|
this.queryParams = { |
||||
|
pageNum: 1, |
||||
|
pageSize: 10, |
||||
|
data: { |
||||
|
id: null, |
||||
|
changeReason: null, |
||||
|
changeContent: null, |
||||
|
changeTime: null, |
||||
|
changeApplicationInfo: null, |
||||
|
changeApprovalInfo: null, |
||||
|
contractChangeInfo: null, |
||||
|
changePerson: null, |
||||
|
changePersonPhone: null, |
||||
|
contractNumber: null, |
||||
|
createUid: null, |
||||
|
createTime: null, |
||||
|
updateUid: null, |
||||
|
updateTime: null, |
||||
|
owerDept: null, |
||||
|
}, |
||||
|
}; |
||||
|
this.resetForm("form"); |
||||
|
}, |
||||
|
/** 搜索按钮操作 */ |
||||
|
handleQuery() { |
||||
|
this.queryParams.pageNum = 1; |
||||
|
this.getList(); |
||||
|
}, |
||||
|
/** 重置按钮操作 */ |
||||
|
resetQuery() { |
||||
|
this.resetQueryForm(); |
||||
|
this.handleQuery(); |
||||
|
}, |
||||
|
// 多选框选中数据 |
||||
|
handleSelectionChange(selection) { |
||||
|
this.ids = selection.map((item) => item.id); |
||||
|
this.single = selection.length !== 1; |
||||
|
this.multiple = !selection.length; |
||||
|
}, |
||||
|
/** 新增按钮操作 */ |
||||
|
handleAdd() { |
||||
|
this.reset(); |
||||
|
this.open = true; |
||||
|
this.title = "添加合同变更信息"; |
||||
|
}, |
||||
|
/** 修改按钮操作 */ |
||||
|
handleUpdate(row) { |
||||
|
this.reset(); |
||||
|
const id = row.id || this.ids; |
||||
|
getChange(id).then((response) => { |
||||
|
this.form = response.data; |
||||
|
console.log("this.form", this.form); |
||||
|
this.open = true; |
||||
|
this.title = "修改合同变更信息"; |
||||
|
}); |
||||
|
}, |
||||
|
|
||||
|
// 查看信息 |
||||
|
viewInfo(row) { |
||||
|
this.viewTitle = "查看合同变更信息"; |
||||
|
this.alterMsg = row; |
||||
|
console.log("alterMsg", row); |
||||
|
this.viewOpen = true; |
||||
|
}, |
||||
|
|
||||
|
// 关闭弹窗 |
||||
|
closeView() { |
||||
|
this.proMsg = {}; |
||||
|
}, |
||||
|
|
||||
|
/** 提交按钮 */ |
||||
|
submitForm() { |
||||
|
this.$refs["form"].validate((valid) => { |
||||
|
if (valid) { |
||||
|
if (this.form.id != null) { |
||||
|
updateChange(this.form).then((response) => { |
||||
|
if (response.code === 200) { |
||||
|
this.msgSuccess("修改成功"); |
||||
|
this.open = false; |
||||
|
this.getList(); |
||||
|
} |
||||
|
}); |
||||
|
} else { |
||||
|
this.form.contractNumber = this.contractNumber; |
||||
|
addChange(this.form).then((response) => { |
||||
|
if (response.code === 200) { |
||||
|
this.msgSuccess("新增成功"); |
||||
|
this.open = false; |
||||
|
this.getList(); |
||||
|
} |
||||
|
}); |
||||
|
} |
||||
|
} |
||||
|
}); |
||||
|
}, |
||||
|
/** 删除按钮操作 */ |
||||
|
handleDelete(row) { |
||||
|
const ids = row.id || this.ids; |
||||
|
if (ids) { |
||||
|
this.$confirm("是否删除选中的数据?", "警告", { |
||||
|
confirmButtonText: "确定", |
||||
|
cancelButtonText: "取消", |
||||
|
type: "warning", |
||||
|
}) |
||||
|
.then(function () { |
||||
|
return delChange(ids); |
||||
|
}) |
||||
|
.then(() => { |
||||
|
this.getList(); |
||||
|
this.msgSuccess("删除成功"); |
||||
|
}) |
||||
|
.catch(function () {}); |
||||
|
} else { |
||||
|
this.$message.warning("请选择要删除的数据!!"); |
||||
|
} |
||||
|
}, |
||||
|
/** 导出按钮操作 */ |
||||
|
handleExport() { |
||||
|
const queryParams = this.queryParams; |
||||
|
let message = "是否确认导出所有的数据项?"; |
||||
|
if (this.ids) { |
||||
|
message = "是否确认导出选中的数据项?"; |
||||
|
queryParams.ids = this.ids; |
||||
|
} |
||||
|
this.$confirm(message, "警告", { |
||||
|
confirmButtonText: "确定", |
||||
|
cancelButtonText: "取消", |
||||
|
type: "warning", |
||||
|
}) |
||||
|
.then(function () { |
||||
|
return exportChange(queryParams); |
||||
|
}) |
||||
|
.then((response) => { |
||||
|
this.downloadFile(response, true, response.msg); |
||||
|
// this.download(response.msg); |
||||
|
}) |
||||
|
.catch(function () {}); |
||||
|
}, |
||||
|
}, |
||||
|
}; |
||||
|
</script> |
||||
|
<style scoped lang="scss"> |
||||
|
::v-deep { |
||||
|
.el-dialog { |
||||
|
// margin-top: 2vh !important; |
||||
|
height: 680px; |
||||
|
overflow-y: auto; |
||||
|
.content { |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
align-items: center; |
||||
|
.margin-top { |
||||
|
width: 95%; |
||||
|
border-left: 1px solid #f0f0f0; |
||||
|
border-right: 1px solid #f0f0f0; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
.el-dialog__title { |
||||
|
font-weight: 700; |
||||
|
font-size: 28px; |
||||
|
// font-size: 24px; |
||||
|
// line-height: 32px; |
||||
|
} |
||||
|
.draLine { |
||||
|
width: 100%; |
||||
|
border: 2px solid #000; |
||||
|
margin: 10px 0 20px 0; |
||||
|
} |
||||
|
.infoTitle { |
||||
|
color: #000; |
||||
|
font-size: 20px; |
||||
|
font-weight: 700; |
||||
|
} |
||||
|
} |
||||
|
</style> |
||||
|
@ -1,3 +1,566 @@ |
|||||
<template> |
<template> |
||||
<div>评价问题</div> |
<!-- 1.1.1.1.3.7. 合同评价问题--> |
||||
|
<div class="app-container"> |
||||
|
<el-form |
||||
|
:model="queryParams" |
||||
|
ref="queryForm" |
||||
|
:inline="true" |
||||
|
v-show="showSearch" |
||||
|
label-width="68px" |
||||
|
> |
||||
|
<el-form-item label="合同编号" prop="contractNumber"> |
||||
|
<el-input |
||||
|
v-model="queryParams.data.contractNumber" |
||||
|
placeholder="请输入合同编号" |
||||
|
clearable |
||||
|
size="small" |
||||
|
@keyup.enter.native="handleQuery" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="问题序号" prop="questionNumber"> |
||||
|
<el-input |
||||
|
v-model="queryParams.data.questionNumber" |
||||
|
placeholder="请输入问题序号" |
||||
|
clearable |
||||
|
size="small" |
||||
|
@keyup.enter.native="handleQuery" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="问题概述" prop="problemSummary"> |
||||
|
<el-input |
||||
|
v-model="queryParams.data.problemSummary" |
||||
|
placeholder="请输入问题概述" |
||||
|
clearable |
||||
|
size="small" |
||||
|
@keyup.enter.native="handleQuery" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="问题内容" prop="questionContent"> |
||||
|
<el-input |
||||
|
v-model="queryParams.data.questionContent" |
||||
|
placeholder="请输入问题内容" |
||||
|
clearable |
||||
|
size="small" |
||||
|
@keyup.enter.native="handleQuery" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="分值" prop="score"> |
||||
|
<el-input |
||||
|
v-model="queryParams.data.score" |
||||
|
placeholder="请输入分值" |
||||
|
clearable |
||||
|
size="small" |
||||
|
@keyup.enter.native="handleQuery" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="问题分类" prop="questionClassification"> |
||||
|
<el-input |
||||
|
v-model="queryParams.data.questionClassification" |
||||
|
placeholder="请输入问题分类" |
||||
|
clearable |
||||
|
size="small" |
||||
|
@keyup.enter.native="handleQuery" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="扣分值" prop="deductionValue"> |
||||
|
<el-input |
||||
|
v-model="queryParams.data.deductionValue" |
||||
|
placeholder="请输入扣分值" |
||||
|
clearable |
||||
|
size="small" |
||||
|
@keyup.enter.native="handleQuery" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="总分" prop="totalScore"> |
||||
|
<el-input |
||||
|
v-model="queryParams.data.totalScore" |
||||
|
placeholder="请输入总分" |
||||
|
clearable |
||||
|
size="small" |
||||
|
@keyup.enter.native="handleQuery" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="项目编码" prop="proCode"> |
||||
|
<el-input |
||||
|
v-model="queryParams.data.proCode" |
||||
|
placeholder="请输入项目编码" |
||||
|
clearable |
||||
|
size="small" |
||||
|
@keyup.enter.native="handleQuery" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="PRO_NO" prop="proNo"> |
||||
|
<el-input |
||||
|
v-model="queryParams.data.proNo" |
||||
|
placeholder="请输入PRO_NO" |
||||
|
clearable |
||||
|
size="small" |
||||
|
@keyup.enter.native="handleQuery" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="创建人" prop="createUid"> |
||||
|
<el-input |
||||
|
v-model="queryParams.data.createUid" |
||||
|
placeholder="请输入创建人" |
||||
|
clearable |
||||
|
size="small" |
||||
|
@keyup.enter.native="handleQuery" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="创建时间" prop="createTime"> |
||||
|
<el-date-picker |
||||
|
clearable |
||||
|
size="small" |
||||
|
style="width: 200px" |
||||
|
v-model="queryParams.createTime" |
||||
|
type="date" |
||||
|
value-format="yyyy-MM-dd" |
||||
|
placeholder="选择创建时间" |
||||
|
> |
||||
|
</el-date-picker> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="更新人" prop="updateUid"> |
||||
|
<el-input |
||||
|
v-model="queryParams.data.updateUid" |
||||
|
placeholder="请输入更新人" |
||||
|
clearable |
||||
|
size="small" |
||||
|
@keyup.enter.native="handleQuery" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="更新人" prop="updateTime"> |
||||
|
<el-date-picker |
||||
|
clearable |
||||
|
size="small" |
||||
|
style="width: 200px" |
||||
|
v-model="queryParams.updateTime" |
||||
|
type="date" |
||||
|
value-format="yyyy-MM-dd" |
||||
|
placeholder="选择更新人" |
||||
|
> |
||||
|
</el-date-picker> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="数源部门" prop="owerDept"> |
||||
|
<el-input |
||||
|
v-model="queryParams.data.owerDept" |
||||
|
placeholder="请输入数源部门" |
||||
|
clearable |
||||
|
size="small" |
||||
|
@keyup.enter.native="handleQuery" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
<el-form-item> |
||||
|
<el-button |
||||
|
type="cyan" |
||||
|
icon="el-icon-search" |
||||
|
size="mini" |
||||
|
@click="handleQuery" |
||||
|
>搜索</el-button |
||||
|
> |
||||
|
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery" |
||||
|
>重置</el-button |
||||
|
> |
||||
|
</el-form-item> |
||||
|
</el-form> |
||||
|
|
||||
|
<el-row :gutter="10" class="mb8"> |
||||
|
<el-col :span="1.5"> |
||||
|
<el-button |
||||
|
type="primary" |
||||
|
icon="el-icon-plus" |
||||
|
size="mini" |
||||
|
@click="handleAdd" |
||||
|
v-hasPermi="['build:issues:add']" |
||||
|
>新增</el-button |
||||
|
> |
||||
|
</el-col> |
||||
|
<el-col :span="1.5"> |
||||
|
<el-button |
||||
|
type="success" |
||||
|
icon="el-icon-edit" |
||||
|
size="mini" |
||||
|
:disabled="single" |
||||
|
@click="handleUpdate" |
||||
|
v-hasPermi="['build:issues:edit']" |
||||
|
>修改</el-button |
||||
|
> |
||||
|
</el-col> |
||||
|
<el-col :span="1.5"> |
||||
|
<el-button |
||||
|
type="danger" |
||||
|
icon="el-icon-delete" |
||||
|
size="mini" |
||||
|
:disabled="multiple" |
||||
|
@click="handleDelete" |
||||
|
v-hasPermi="['build:issues:remove']" |
||||
|
>删除</el-button |
||||
|
> |
||||
|
</el-col> |
||||
|
<el-col :span="1.5"> |
||||
|
<el-button |
||||
|
type="warning" |
||||
|
icon="el-icon-download" |
||||
|
size="mini" |
||||
|
@click="handleExport" |
||||
|
v-hasPermi="['build:issues:export']" |
||||
|
>导出</el-button |
||||
|
> |
||||
|
</el-col> |
||||
|
<right-toolbar |
||||
|
:showSearch.sync="showSearch" |
||||
|
@queryTable="getList" |
||||
|
></right-toolbar> |
||||
|
</el-row> |
||||
|
|
||||
|
<el-table |
||||
|
v-loading="loading" |
||||
|
:data="issuesList" |
||||
|
@selection-change="handleSelectionChange" |
||||
|
> |
||||
|
<el-table-column type="selection" width="55" align="center" /> |
||||
|
<el-table-column label="序号" type="index" width="50" align="center" /> |
||||
|
|
||||
|
<el-table-column label="合同编号" align="center" prop="contractNumber" /> |
||||
|
<el-table-column label="问题序号" align="center" prop="questionNumber" /> |
||||
|
<el-table-column label="问题概述" align="center" prop="problemSummary" /> |
||||
|
<el-table-column label="问题内容" align="center" prop="questionContent" /> |
||||
|
<el-table-column label="分值" align="center" prop="score" /> |
||||
|
<el-table-column |
||||
|
label="问题分类" |
||||
|
align="center" |
||||
|
prop="questionClassification" |
||||
|
/> |
||||
|
<el-table-column label="扣分值" align="center" prop="deductionValue" /> |
||||
|
<el-table-column label="总分" align="center" prop="totalScore" /> |
||||
|
<el-table-column label="项目编码" align="center" prop="proCode" /> |
||||
|
<el-table-column label="PRO_NO" align="center" prop="proNo" /> |
||||
|
<el-table-column label="创建人" align="center" prop="createUid" /> |
||||
|
<el-table-column |
||||
|
label="创建时间" |
||||
|
align="center" |
||||
|
prop="createTime" |
||||
|
width="180" |
||||
|
> |
||||
|
<template slot-scope="scope"> |
||||
|
<span>{{ parseTime(scope.row.createTime, "{y}-{m}-{d}") }}</span> |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
<el-table-column label="更新人" align="center" prop="updateUid" /> |
||||
|
<el-table-column |
||||
|
label="更新人" |
||||
|
align="center" |
||||
|
prop="updateTime" |
||||
|
width="180" |
||||
|
> |
||||
|
<template slot-scope="scope"> |
||||
|
<span>{{ parseTime(scope.row.updateTime, "{y}-{m}-{d}") }}</span> |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
<el-table-column label="数源部门" align="center" prop="owerDept" /> |
||||
|
<el-table-column |
||||
|
label="操作" |
||||
|
align="center" |
||||
|
class-name="small-padding fixed-width" |
||||
|
> |
||||
|
<template slot-scope="scope"> |
||||
|
<el-button |
||||
|
size="mini" |
||||
|
type="text" |
||||
|
icon="el-icon-edit" |
||||
|
@click="handleUpdate(scope.row)" |
||||
|
v-hasPermi="['build:issues:edit']" |
||||
|
>修改</el-button |
||||
|
> |
||||
|
<el-button |
||||
|
size="mini" |
||||
|
type="text" |
||||
|
icon="el-icon-delete" |
||||
|
@click="handleDelete(scope.row)" |
||||
|
v-hasPermi="['build:issues:remove']" |
||||
|
>删除</el-button |
||||
|
> |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
</el-table> |
||||
|
|
||||
|
<pagination |
||||
|
v-show="total > 0" |
||||
|
:total="total" |
||||
|
:page.sync="queryParams.pageNum" |
||||
|
:limit.sync="queryParams.pageSize" |
||||
|
@pagination="getList" |
||||
|
/> |
||||
|
|
||||
|
<!-- 添加或修改合同评价问题对话框 --> |
||||
|
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body> |
||||
|
<el-form ref="form" :model="form" :rules="rules" label-width="80px"> |
||||
|
<el-form-item label="合同编号" prop="contractNumber"> |
||||
|
<el-input |
||||
|
v-model="form.contractNumber" |
||||
|
placeholder="请输入合同编号" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="问题序号" prop="questionNumber"> |
||||
|
<el-input |
||||
|
v-model="form.questionNumber" |
||||
|
placeholder="请输入问题序号" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="问题概述" prop="problemSummary"> |
||||
|
<el-input |
||||
|
v-model="form.problemSummary" |
||||
|
placeholder="请输入问题概述" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="问题内容" prop="questionContent"> |
||||
|
<el-input |
||||
|
v-model="form.questionContent" |
||||
|
placeholder="请输入问题内容" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="分值" prop="score"> |
||||
|
<el-input v-model="form.score" placeholder="请输入分值" /> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="问题分类" prop="questionClassification"> |
||||
|
<el-input |
||||
|
v-model="form.questionClassification" |
||||
|
placeholder="请输入问题分类" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="扣分值" prop="deductionValue"> |
||||
|
<el-input v-model="form.deductionValue" placeholder="请输入扣分值" /> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="总分" prop="totalScore"> |
||||
|
<el-input v-model="form.totalScore" placeholder="请输入总分" /> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="项目编码" prop="proCode"> |
||||
|
<el-input v-model="form.proCode" placeholder="请输入项目编码" /> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="PRO_NO" prop="proNo"> |
||||
|
<el-input v-model="form.proNo" placeholder="请输入PRO_NO" /> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="创建人" prop="createUid"> |
||||
|
<el-input v-model="form.createUid" placeholder="请输入创建人" /> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="更新人" prop="updateUid"> |
||||
|
<el-input v-model="form.updateUid" placeholder="请输入更新人" /> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="数源部门" prop="owerDept"> |
||||
|
<el-input v-model="form.owerDept" placeholder="请输入数源部门" /> |
||||
|
</el-form-item> |
||||
|
</el-form> |
||||
|
<div slot="footer" class="dialog-footer"> |
||||
|
<el-button type="primary" @click="submitForm">确 定</el-button> |
||||
|
<el-button @click="cancel">取 消</el-button> |
||||
|
</div> |
||||
|
</el-dialog> |
||||
|
</div> |
||||
</template> |
</template> |
||||
|
|
||||
|
<script> |
||||
|
import { |
||||
|
listIssues, |
||||
|
getIssues, |
||||
|
delIssues, |
||||
|
addIssues, |
||||
|
updateIssues, |
||||
|
exportIssues, |
||||
|
} from "@/api/build/issues"; |
||||
|
|
||||
|
export default { |
||||
|
name: "Issues", |
||||
|
data() { |
||||
|
return { |
||||
|
// 遮罩层 |
||||
|
loading: true, |
||||
|
// 选中数组 |
||||
|
ids: [], |
||||
|
// 非单个禁用 |
||||
|
single: true, |
||||
|
// 非多个禁用 |
||||
|
multiple: true, |
||||
|
// 显示搜索条件 |
||||
|
showSearch: true, |
||||
|
// 总条数 |
||||
|
total: 0, |
||||
|
// 合同评价问题表格数据 |
||||
|
issuesList: [], |
||||
|
// 弹出层标题 |
||||
|
title: "", |
||||
|
// 是否显示弹出层 |
||||
|
open: false, |
||||
|
// 查询参数 |
||||
|
queryParams: { |
||||
|
pageNum: 1, |
||||
|
pageSize: 10, |
||||
|
ids: null, |
||||
|
data: { |
||||
|
contractNumber: null, |
||||
|
questionNumber: null, |
||||
|
problemSummary: null, |
||||
|
questionContent: null, |
||||
|
score: null, |
||||
|
questionClassification: null, |
||||
|
deductionValue: null, |
||||
|
totalScore: null, |
||||
|
proCode: null, |
||||
|
proNo: null, |
||||
|
createUid: null, |
||||
|
createTime: null, |
||||
|
updateUid: null, |
||||
|
updateTime: null, |
||||
|
owerDept: null, |
||||
|
}, |
||||
|
}, |
||||
|
// 表单参数 |
||||
|
form: {}, |
||||
|
// 表单校验 |
||||
|
rules: {}, |
||||
|
}; |
||||
|
}, |
||||
|
created() { |
||||
|
this.getList(); |
||||
|
}, |
||||
|
methods: { |
||||
|
/** 查询合同评价问题列表 */ |
||||
|
getList() { |
||||
|
this.loading = true; |
||||
|
listIssues(this.queryParams).then((response) => { |
||||
|
this.issuesList = response.records; |
||||
|
this.total = response.total; |
||||
|
this.loading = false; |
||||
|
}); |
||||
|
}, |
||||
|
// 取消按钮 |
||||
|
cancel() { |
||||
|
this.open = false; |
||||
|
this.reset(); |
||||
|
}, |
||||
|
// 表单重置 |
||||
|
reset() { |
||||
|
this.form = { |
||||
|
id: null, |
||||
|
contractNumber: null, |
||||
|
questionNumber: null, |
||||
|
problemSummary: null, |
||||
|
questionContent: null, |
||||
|
score: null, |
||||
|
questionClassification: null, |
||||
|
deductionValue: null, |
||||
|
totalScore: null, |
||||
|
proCode: null, |
||||
|
proNo: null, |
||||
|
createUid: null, |
||||
|
createTime: null, |
||||
|
updateUid: null, |
||||
|
updateTime: null, |
||||
|
owerDept: null, |
||||
|
}; |
||||
|
this.resetForm("form"); |
||||
|
}, |
||||
|
// 查询表单重置 |
||||
|
resetQueryForm() { |
||||
|
this.queryParams = { |
||||
|
pageNum: 1, |
||||
|
pageSize: 10, |
||||
|
data: { |
||||
|
id: null, |
||||
|
contractNumber: null, |
||||
|
questionNumber: null, |
||||
|
problemSummary: null, |
||||
|
questionContent: null, |
||||
|
score: null, |
||||
|
questionClassification: null, |
||||
|
deductionValue: null, |
||||
|
totalScore: null, |
||||
|
proCode: null, |
||||
|
proNo: null, |
||||
|
createUid: null, |
||||
|
createTime: null, |
||||
|
updateUid: null, |
||||
|
updateTime: null, |
||||
|
owerDept: null, |
||||
|
}, |
||||
|
}; |
||||
|
this.resetForm("form"); |
||||
|
}, |
||||
|
/** 搜索按钮操作 */ |
||||
|
handleQuery() { |
||||
|
this.queryParams.pageNum = 1; |
||||
|
this.getList(); |
||||
|
}, |
||||
|
/** 重置按钮操作 */ |
||||
|
resetQuery() { |
||||
|
this.resetQueryForm(); |
||||
|
this.handleQuery(); |
||||
|
}, |
||||
|
// 多选框选中数据 |
||||
|
handleSelectionChange(selection) { |
||||
|
this.ids = selection.map((item) => item.id); |
||||
|
this.single = selection.length !== 1; |
||||
|
this.multiple = !selection.length; |
||||
|
}, |
||||
|
/** 新增按钮操作 */ |
||||
|
handleAdd() { |
||||
|
this.reset(); |
||||
|
this.open = true; |
||||
|
this.title = "添加合同评价问题"; |
||||
|
}, |
||||
|
/** 修改按钮操作 */ |
||||
|
handleUpdate(row) { |
||||
|
this.reset(); |
||||
|
const id = row.id || this.ids; |
||||
|
getIssues(id).then((response) => { |
||||
|
this.form = response.data; |
||||
|
this.open = true; |
||||
|
this.title = "修改合同评价问题"; |
||||
|
}); |
||||
|
}, |
||||
|
/** 提交按钮 */ |
||||
|
submitForm() { |
||||
|
this.$refs["form"].validate((valid) => { |
||||
|
if (valid) { |
||||
|
if (this.form.id != null) { |
||||
|
updateIssues(this.form).then((response) => { |
||||
|
if (response.code === 200) { |
||||
|
this.msgSuccess("修改成功"); |
||||
|
this.open = false; |
||||
|
this.getList(); |
||||
|
} |
||||
|
}); |
||||
|
} else { |
||||
|
addIssues(this.form).then((response) => { |
||||
|
if (response.code === 200) { |
||||
|
this.msgSuccess("新增成功"); |
||||
|
this.open = false; |
||||
|
this.getList(); |
||||
|
} |
||||
|
}); |
||||
|
} |
||||
|
} |
||||
|
}); |
||||
|
}, |
||||
|
/** 删除按钮操作 */ |
||||
|
handleDelete(row) { |
||||
|
const ids = row.id || this.ids; |
||||
|
if (ids) { |
||||
|
this.$confirm("是否删除选中的数据?", "警告", { |
||||
|
confirmButtonText: "确定", |
||||
|
cancelButtonText: "取消", |
||||
|
type: "warning", |
||||
|
}) |
||||
|
.then(function () { |
||||
|
return delIssues(ids); |
||||
|
}) |
||||
|
.then(() => { |
||||
|
this.getList(); |
||||
|
this.msgSuccess("删除成功"); |
||||
|
}) |
||||
|
.catch(function () {}); |
||||
|
} else { |
||||
|
this.$message.warning("请选择要删除的数据!!"); |
||||
|
} |
||||
|
}, |
||||
|
}, |
||||
|
}; |
||||
|
</script> |
||||
|
@ -1,3 +1,564 @@ |
|||||
<template> |
<template> |
||||
<div>审批</div> |
<!-- 合同审批信息--> |
||||
|
<div class="app-container"> |
||||
|
<el-form |
||||
|
:model="queryParams" |
||||
|
ref="queryForm" |
||||
|
:inline="true" |
||||
|
v-show="showSearch" |
||||
|
label-width="82px" |
||||
|
> |
||||
|
<el-form-item label="合同申请人" prop="applicant"> |
||||
|
<el-input |
||||
|
v-model="queryParams.data.applicant" |
||||
|
placeholder="请输入合同申请人" |
||||
|
clearable |
||||
|
size="small" |
||||
|
@keyup.enter.native="handleQuery" |
||||
|
><el-button |
||||
|
type="primary" |
||||
|
slot="append" |
||||
|
icon="el-icon-search" |
||||
|
size="small" |
||||
|
@click="handleQuery" |
||||
|
></el-button> |
||||
|
</el-input> |
||||
|
</el-form-item> |
||||
|
|
||||
|
<el-form-item> |
||||
|
<!-- <el-button |
||||
|
type="cyan" |
||||
|
icon="el-icon-search" |
||||
|
size="mini" |
||||
|
@click="handleQuery" |
||||
|
>搜索</el-button |
||||
|
> --> |
||||
|
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery" |
||||
|
>重置</el-button |
||||
|
> |
||||
|
</el-form-item> |
||||
|
</el-form> |
||||
|
|
||||
|
<el-row :gutter="10" class="mb8"> |
||||
|
<el-col :span="1.5"> |
||||
|
<el-button |
||||
|
type="primary" |
||||
|
icon="el-icon-plus" |
||||
|
size="mini" |
||||
|
@click="handleAdd" |
||||
|
v-hasPermi="['build:appr:add']" |
||||
|
>新增</el-button |
||||
|
> |
||||
|
</el-col> |
||||
|
<el-col :span="1.5"> |
||||
|
<el-button |
||||
|
type="success" |
||||
|
icon="el-icon-edit" |
||||
|
size="mini" |
||||
|
:disabled="single" |
||||
|
@click="handleUpdate" |
||||
|
v-hasPermi="['build:appr:edit']" |
||||
|
>修改</el-button |
||||
|
> |
||||
|
</el-col> |
||||
|
<el-col :span="1.5"> |
||||
|
<el-button |
||||
|
type="danger" |
||||
|
icon="el-icon-delete" |
||||
|
size="mini" |
||||
|
:disabled="multiple" |
||||
|
@click="handleDelete" |
||||
|
v-hasPermi="['build:appr:remove']" |
||||
|
>删除</el-button |
||||
|
> |
||||
|
</el-col> |
||||
|
<right-toolbar |
||||
|
:showSearch.sync="showSearch" |
||||
|
@queryTable="getList" |
||||
|
></right-toolbar> |
||||
|
</el-row> |
||||
|
|
||||
|
<el-table |
||||
|
v-loading="loading" |
||||
|
:data="apprList" |
||||
|
@selection-change="handleSelectionChange" |
||||
|
> |
||||
|
<el-table-column type="selection" width="55" align="center" fixed /> |
||||
|
<el-table-column |
||||
|
label="序号" |
||||
|
type="index" |
||||
|
width="50" |
||||
|
align="center" |
||||
|
fixed |
||||
|
/> |
||||
|
|
||||
|
<el-table-column |
||||
|
label="合同申请人" |
||||
|
align="center" |
||||
|
prop="applicant" |
||||
|
min-width="120" |
||||
|
/> |
||||
|
<el-table-column |
||||
|
label="申请时间" |
||||
|
align="center" |
||||
|
prop="applyTime" |
||||
|
min-width="120" |
||||
|
> |
||||
|
<template slot-scope="scope"> |
||||
|
<span>{{ parseTime(scope.row.applyTime, "{y}-{m}-{d}") }}</span> |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
<el-table-column |
||||
|
label="审批类型" |
||||
|
align="center" |
||||
|
prop="approvalType" |
||||
|
min-width="120" |
||||
|
/> |
||||
|
<el-table-column |
||||
|
label="批复人" |
||||
|
align="center" |
||||
|
prop="approver" |
||||
|
min-width="120" |
||||
|
/> |
||||
|
<el-table-column |
||||
|
label="批复意见" |
||||
|
align="center" |
||||
|
prop="approvalOpinion" |
||||
|
min-width="120" |
||||
|
/> |
||||
|
<el-table-column |
||||
|
label="批复时间" |
||||
|
align="center" |
||||
|
prop="approvalTime" |
||||
|
min-width="120" |
||||
|
> |
||||
|
<template slot-scope="scope"> |
||||
|
<span>{{ parseTime(scope.row.approvalTime, "{y}-{m}-{d}") }}</span> |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
<el-table-column |
||||
|
label="操作" |
||||
|
align="center" |
||||
|
class-name="small-padding fixed-width" |
||||
|
min-width="180" |
||||
|
fixed="right" |
||||
|
> |
||||
|
<template slot-scope="scope"> |
||||
|
<el-button |
||||
|
size="mini" |
||||
|
type="text" |
||||
|
icon="el-icon-view" |
||||
|
@click="viewInfo(scope.row)" |
||||
|
>查看</el-button |
||||
|
> |
||||
|
<el-button |
||||
|
size="mini" |
||||
|
type="text" |
||||
|
icon="el-icon-edit" |
||||
|
@click="handleUpdate(scope.row)" |
||||
|
v-hasPermi="['build:appr:edit']" |
||||
|
>修改</el-button |
||||
|
> |
||||
|
<el-button |
||||
|
size="mini" |
||||
|
type="text" |
||||
|
icon="el-icon-delete" |
||||
|
@click="handleDelete(scope.row)" |
||||
|
v-hasPermi="['build:appr:remove']" |
||||
|
>删除</el-button |
||||
|
> |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
</el-table> |
||||
|
|
||||
|
<pagination |
||||
|
v-show="total > 0" |
||||
|
:total="total" |
||||
|
:page.sync="queryParams.pageNum" |
||||
|
:limit.sync="queryParams.pageSize" |
||||
|
@pagination="getList" |
||||
|
/> |
||||
|
|
||||
|
<!-- 添加或修改合同审批信息对话框 --> |
||||
|
<el-dialog |
||||
|
:title="title" |
||||
|
:visible.sync="open" |
||||
|
width="1200px" |
||||
|
append-to-body |
||||
|
> |
||||
|
<el-form ref="form" :model="form" :rules="rules" label-width="82px"> |
||||
|
<el-form-item label="合同申请人" prop="applicant"> |
||||
|
<el-input v-model="form.applicant" placeholder="请输入合同申请人" /> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="申请时间" prop="applyTime"> |
||||
|
<el-date-picker |
||||
|
clearable |
||||
|
size="small" |
||||
|
style="width: 100%" |
||||
|
v-model="form.applyTime" |
||||
|
type="date" |
||||
|
value-format="yyyy-MM-dd" |
||||
|
placeholder="选择申请时间" |
||||
|
> |
||||
|
</el-date-picker> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="审批类型" prop="approvalType"> |
||||
|
<el-select |
||||
|
v-model="form.approvalType" |
||||
|
placeholder="请选择审批类型" |
||||
|
style="width: 100%" |
||||
|
> |
||||
|
<el-option label="请选择字典生成" value="" /> |
||||
|
</el-select> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="批复人" prop="approver"> |
||||
|
<el-input v-model="form.approver" placeholder="请输入批复人" /> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="批复意见" prop="approvalOpinion"> |
||||
|
<el-input |
||||
|
v-model="form.approvalOpinion" |
||||
|
placeholder="请输入批复意见" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="批复时间" prop="approvalTime"> |
||||
|
<el-date-picker |
||||
|
clearable |
||||
|
size="small" |
||||
|
style="width: 100%" |
||||
|
v-model="form.approvalTime" |
||||
|
type="date" |
||||
|
value-format="yyyy-MM-dd" |
||||
|
placeholder="选择批复时间" |
||||
|
> |
||||
|
</el-date-picker> |
||||
|
</el-form-item> |
||||
|
</el-form> |
||||
|
<div slot="footer" class="dialog-footer"> |
||||
|
<el-button type="primary" @click="submitForm">确 定</el-button> |
||||
|
<el-button @click="cancel">取 消</el-button> |
||||
|
</div> |
||||
|
</el-dialog> |
||||
|
|
||||
|
<!--查看 --> |
||||
|
<el-dialog |
||||
|
:title="viewTitle" |
||||
|
:visible.sync="viewOpen" |
||||
|
width="1200px" |
||||
|
append-to-body |
||||
|
@close="closeView" |
||||
|
> |
||||
|
<!-- 分包合同信息 --> |
||||
|
<div class="infoTitle">分包合同信息</div> |
||||
|
<div class="draLine"></div> |
||||
|
<div class="content"> |
||||
|
<el-descriptions |
||||
|
class="margin-top" |
||||
|
:column="2" |
||||
|
border |
||||
|
:labelStyle="{ |
||||
|
'text-align': 'left', |
||||
|
width: '180px', |
||||
|
height: '50px', |
||||
|
}" |
||||
|
:contentStyle="{}" |
||||
|
> |
||||
|
<el-descriptions-item> |
||||
|
<template slot="label"> 合同申请人 </template> |
||||
|
{{ this.examineMsg.applicant }} |
||||
|
</el-descriptions-item> |
||||
|
<el-descriptions-item> |
||||
|
<template slot="label"> 申请时间 </template> |
||||
|
{{ this.examineMsg.applyTime }} |
||||
|
</el-descriptions-item> |
||||
|
<el-descriptions-item> |
||||
|
<template slot="label"> 审批类型 </template> |
||||
|
{{ this.examineMsg.approvalType }} |
||||
|
</el-descriptions-item> |
||||
|
<el-descriptions-item> |
||||
|
<template slot="label"> 批复人 </template> |
||||
|
{{ this.examineMsg.approver }} |
||||
|
</el-descriptions-item> |
||||
|
<el-descriptions-item> |
||||
|
<template slot="label"> 批复意见 </template> |
||||
|
{{ this.examineMsg.approvalOpinion }} |
||||
|
</el-descriptions-item> |
||||
|
<el-descriptions-item> |
||||
|
<template slot="label"> 批复时间 </template> |
||||
|
{{ this.examineMsg.approvalTime }} |
||||
|
</el-descriptions-item> |
||||
|
</el-descriptions> |
||||
|
</div> |
||||
|
</el-dialog> |
||||
|
</div> |
||||
</template> |
</template> |
||||
|
|
||||
|
<script> |
||||
|
import { |
||||
|
listAppr, |
||||
|
getAppr, |
||||
|
delAppr, |
||||
|
addAppr, |
||||
|
updateAppr, |
||||
|
exportAppr, |
||||
|
} from "@/api/build/appr"; |
||||
|
|
||||
|
export default { |
||||
|
name: "Appr", |
||||
|
props: ["contractNumber"], |
||||
|
data() { |
||||
|
return { |
||||
|
// 遮罩层 |
||||
|
loading: true, |
||||
|
// 选中数组 |
||||
|
ids: [], |
||||
|
// 非单个禁用 |
||||
|
single: true, |
||||
|
// 非多个禁用 |
||||
|
multiple: true, |
||||
|
// 显示搜索条件 |
||||
|
showSearch: true, |
||||
|
// 总条数 |
||||
|
total: 0, |
||||
|
// 合同审批信息表格数据 |
||||
|
apprList: [], |
||||
|
// 弹出层标题 |
||||
|
title: "", |
||||
|
viewTitle: "", |
||||
|
// 是否显示弹出层 |
||||
|
open: false, |
||||
|
viewOpen: false, |
||||
|
// 查询参数 |
||||
|
queryParams: { |
||||
|
pageNum: 1, |
||||
|
pageSize: 10, |
||||
|
ids: null, |
||||
|
data: { |
||||
|
applicant: null, |
||||
|
applyTime: null, |
||||
|
approvalType: null, |
||||
|
approver: null, |
||||
|
approvalOpinion: null, |
||||
|
approvalTime: null, |
||||
|
contractNumber: null, |
||||
|
createUid: null, |
||||
|
createTime: null, |
||||
|
updateUid: null, |
||||
|
updateTime: null, |
||||
|
owerDept: null, |
||||
|
}, |
||||
|
// 排序方式 |
||||
|
params: { |
||||
|
// 按哪个字段排序 |
||||
|
orderBy: "create_time", |
||||
|
// desc降序,升序asc |
||||
|
sort: "desc", |
||||
|
}, |
||||
|
}, |
||||
|
// 表单参数 |
||||
|
form: {}, |
||||
|
// 表单校验 |
||||
|
rules: {}, |
||||
|
examineMsg: {}, |
||||
|
}; |
||||
|
}, |
||||
|
created() { |
||||
|
this.getList(); |
||||
|
}, |
||||
|
// 父组件 利用axios请求得到的值 传送到子组件,要监听,否则初始渲染时为空 |
||||
|
watch: { |
||||
|
contractNumber: function (n, o) { |
||||
|
this.contractNumber = n; |
||||
|
// console.log("contractNumber", this.contractNumber); |
||||
|
this.getList(); |
||||
|
}, |
||||
|
}, |
||||
|
methods: { |
||||
|
/** 查询合同审批信息列表 */ |
||||
|
getList() { |
||||
|
this.loading = true; |
||||
|
if (this.$route.query.baseDataId) { |
||||
|
this.queryParams.data.contractNumber = this.contractNumber; |
||||
|
} |
||||
|
listAppr(this.queryParams).then((response) => { |
||||
|
this.apprList = response.records; |
||||
|
this.total = response.total; |
||||
|
this.loading = false; |
||||
|
}); |
||||
|
}, |
||||
|
// 取消按钮 |
||||
|
cancel() { |
||||
|
this.open = false; |
||||
|
this.reset(); |
||||
|
}, |
||||
|
// 表单重置 |
||||
|
reset() { |
||||
|
this.form = { |
||||
|
id: null, |
||||
|
applicant: null, |
||||
|
applyTime: null, |
||||
|
approvalType: null, |
||||
|
approver: null, |
||||
|
approvalOpinion: null, |
||||
|
approvalTime: null, |
||||
|
contractNumber: null, |
||||
|
createUid: null, |
||||
|
createTime: null, |
||||
|
updateUid: null, |
||||
|
updateTime: null, |
||||
|
owerDept: null, |
||||
|
}; |
||||
|
this.resetForm("form"); |
||||
|
}, |
||||
|
// 查询表单重置 |
||||
|
resetQueryForm() { |
||||
|
this.queryParams = { |
||||
|
pageNum: 1, |
||||
|
pageSize: 10, |
||||
|
data: { |
||||
|
id: null, |
||||
|
applicant: null, |
||||
|
applyTime: null, |
||||
|
approvalType: null, |
||||
|
approver: null, |
||||
|
approvalOpinion: null, |
||||
|
approvalTime: null, |
||||
|
contractNumber: null, |
||||
|
createUid: null, |
||||
|
createTime: null, |
||||
|
updateUid: null, |
||||
|
updateTime: null, |
||||
|
owerDept: null, |
||||
|
}, |
||||
|
}; |
||||
|
this.resetForm("form"); |
||||
|
}, |
||||
|
/** 搜索按钮操作 */ |
||||
|
handleQuery() { |
||||
|
this.queryParams.pageNum = 1; |
||||
|
this.getList(); |
||||
|
}, |
||||
|
/** 重置按钮操作 */ |
||||
|
resetQuery() { |
||||
|
this.resetQueryForm(); |
||||
|
this.handleQuery(); |
||||
|
}, |
||||
|
// 多选框选中数据 |
||||
|
handleSelectionChange(selection) { |
||||
|
this.ids = selection.map((item) => item.id); |
||||
|
this.single = selection.length !== 1; |
||||
|
this.multiple = !selection.length; |
||||
|
}, |
||||
|
/** 新增按钮操作 */ |
||||
|
handleAdd() { |
||||
|
this.reset(); |
||||
|
this.open = true; |
||||
|
this.title = "添加合同审批信息"; |
||||
|
}, |
||||
|
/** 修改按钮操作 */ |
||||
|
handleUpdate(row) { |
||||
|
this.reset(); |
||||
|
const id = row.id || this.ids; |
||||
|
getAppr(id).then((response) => { |
||||
|
this.form = response.data; |
||||
|
this.open = true; |
||||
|
this.title = "修改合同审批信息"; |
||||
|
}); |
||||
|
}, |
||||
|
|
||||
|
// 查看信息 |
||||
|
viewInfo(row) { |
||||
|
this.viewTitle = "查看合同审批信息"; |
||||
|
this.examineMsg = row; |
||||
|
console.log("subMsg", row); |
||||
|
this.viewOpen = true; |
||||
|
}, |
||||
|
|
||||
|
// 关闭弹窗 |
||||
|
closeView() { |
||||
|
this.proMsg = {}; |
||||
|
}, |
||||
|
|
||||
|
/** 提交按钮 */ |
||||
|
submitForm() { |
||||
|
this.$refs["form"].validate((valid) => { |
||||
|
if (valid) { |
||||
|
if (this.form.id != null) { |
||||
|
updateAppr(this.form).then((response) => { |
||||
|
if (response.code === 200) { |
||||
|
this.msgSuccess("修改成功"); |
||||
|
this.open = false; |
||||
|
this.getList(); |
||||
|
} |
||||
|
}); |
||||
|
} else { |
||||
|
this.form.contractNumber = this.contractNumber; |
||||
|
addAppr(this.form).then((response) => { |
||||
|
if (response.code === 200) { |
||||
|
this.msgSuccess("新增成功"); |
||||
|
this.open = false; |
||||
|
this.getList(); |
||||
|
} |
||||
|
}); |
||||
|
} |
||||
|
} |
||||
|
}); |
||||
|
}, |
||||
|
/** 删除按钮操作 */ |
||||
|
handleDelete(row) { |
||||
|
const ids = row.id || this.ids; |
||||
|
if (ids) { |
||||
|
this.$confirm("是否删除选中的数据?", "警告", { |
||||
|
confirmButtonText: "确定", |
||||
|
cancelButtonText: "取消", |
||||
|
type: "warning", |
||||
|
}) |
||||
|
.then(function () { |
||||
|
return delAppr(ids); |
||||
|
}) |
||||
|
.then(() => { |
||||
|
this.getList(); |
||||
|
this.msgSuccess("删除成功"); |
||||
|
}) |
||||
|
.catch(function () {}); |
||||
|
} else { |
||||
|
this.$message.warning("请选择要删除的数据!!"); |
||||
|
} |
||||
|
}, |
||||
|
}, |
||||
|
}; |
||||
|
</script> |
||||
|
<style scoped lang="scss"> |
||||
|
::v-deep { |
||||
|
.el-dialog { |
||||
|
// margin-top: 2vh !important; |
||||
|
height: 550px; |
||||
|
overflow-y: auto; |
||||
|
.content { |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
align-items: center; |
||||
|
.margin-top { |
||||
|
width: 95%; |
||||
|
border-left: 1px solid #f0f0f0; |
||||
|
border-right: 1px solid #f0f0f0; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
.el-dialog__title { |
||||
|
font-weight: 700; |
||||
|
font-size: 28px; |
||||
|
// font-size: 24px; |
||||
|
// line-height: 32px; |
||||
|
} |
||||
|
.draLine { |
||||
|
width: 100%; |
||||
|
border: 2px solid #000; |
||||
|
margin: 10px 0 20px 0; |
||||
|
} |
||||
|
.infoTitle { |
||||
|
color: #000; |
||||
|
font-size: 20px; |
||||
|
font-weight: 700; |
||||
|
} |
||||
|
} |
||||
|
</style> |
||||
|
@ -1,3 +1,544 @@ |
|||||
<template> |
<template> |
||||
<div>履约评价表</div> |
<!-- 合同履约评价--> |
||||
|
<div class="app-container"> |
||||
|
<el-form |
||||
|
:model="queryParams" |
||||
|
ref="queryForm" |
||||
|
:inline="true" |
||||
|
v-show="showSearch" |
||||
|
label-width="68px" |
||||
|
> |
||||
|
<el-form-item label="阶段性交付成果" prop="phasedPaymentResults"> |
||||
|
<el-input |
||||
|
v-model="queryParams.data.phasedPaymentResults" |
||||
|
placeholder="请输入阶段性交付成果" |
||||
|
clearable |
||||
|
size="small" |
||||
|
@keyup.enter.native="handleQuery" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="合同编号" prop="contractNumber"> |
||||
|
<el-input |
||||
|
v-model="queryParams.data.contractNumber" |
||||
|
placeholder="请输入合同编号" |
||||
|
clearable |
||||
|
size="small" |
||||
|
@keyup.enter.native="handleQuery" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="评价描述" prop="evaluationDescription"> |
||||
|
<el-input |
||||
|
v-model="queryParams.data.evaluationDescription" |
||||
|
placeholder="请输入评价描述" |
||||
|
clearable |
||||
|
size="small" |
||||
|
@keyup.enter.native="handleQuery" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="当前季度评价状态" prop="evaluationStatus"> |
||||
|
<el-select |
||||
|
v-model="queryParams.data.evaluationStatus" |
||||
|
placeholder="请选择当前季度评价状态" |
||||
|
clearable |
||||
|
size="small" |
||||
|
> |
||||
|
<el-option label="请选择字典生成" value="" /> |
||||
|
</el-select> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="项目编码" prop="proCode"> |
||||
|
<el-input |
||||
|
v-model="queryParams.data.proCode" |
||||
|
placeholder="请输入项目编码" |
||||
|
clearable |
||||
|
size="small" |
||||
|
@keyup.enter.native="handleQuery" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="项目编号" prop="proNo"> |
||||
|
<el-input |
||||
|
v-model="queryParams.data.proNo" |
||||
|
placeholder="请输入项目编号" |
||||
|
clearable |
||||
|
size="small" |
||||
|
@keyup.enter.native="handleQuery" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="创建人" prop="createUid"> |
||||
|
<el-input |
||||
|
v-model="queryParams.data.createUid" |
||||
|
placeholder="请输入创建人" |
||||
|
clearable |
||||
|
size="small" |
||||
|
@keyup.enter.native="handleQuery" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="创建时间" prop="createTime"> |
||||
|
<el-date-picker |
||||
|
clearable |
||||
|
size="small" |
||||
|
style="width: 200px" |
||||
|
v-model="queryParams.createTime" |
||||
|
type="date" |
||||
|
value-format="yyyy-MM-dd" |
||||
|
placeholder="选择创建时间" |
||||
|
> |
||||
|
</el-date-picker> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="UPDATE_UID" prop="updateUid"> |
||||
|
<el-input |
||||
|
v-model="queryParams.data.updateUid" |
||||
|
placeholder="请输入UPDATE_UID" |
||||
|
clearable |
||||
|
size="small" |
||||
|
@keyup.enter.native="handleQuery" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="UPDATE_UID" prop="updateTime"> |
||||
|
<el-date-picker |
||||
|
clearable |
||||
|
size="small" |
||||
|
style="width: 200px" |
||||
|
v-model="queryParams.updateTime" |
||||
|
type="date" |
||||
|
value-format="yyyy-MM-dd" |
||||
|
placeholder="选择UPDATE_UID" |
||||
|
> |
||||
|
</el-date-picker> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="数源部门" prop="owerDept"> |
||||
|
<el-input |
||||
|
v-model="queryParams.data.owerDept" |
||||
|
placeholder="请输入数源部门" |
||||
|
clearable |
||||
|
size="small" |
||||
|
@keyup.enter.native="handleQuery" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
<el-form-item> |
||||
|
<el-button |
||||
|
type="cyan" |
||||
|
icon="el-icon-search" |
||||
|
size="mini" |
||||
|
@click="handleQuery" |
||||
|
>搜索</el-button |
||||
|
> |
||||
|
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery" |
||||
|
>重置</el-button |
||||
|
> |
||||
|
</el-form-item> |
||||
|
</el-form> |
||||
|
|
||||
|
<el-row :gutter="10" class="mb8"> |
||||
|
<el-col :span="1.5"> |
||||
|
<el-button |
||||
|
type="primary" |
||||
|
icon="el-icon-plus" |
||||
|
size="mini" |
||||
|
@click="handleAdd" |
||||
|
v-hasPermi="['build: eval:add']" |
||||
|
>新增</el-button |
||||
|
> |
||||
|
</el-col> |
||||
|
<el-col :span="1.5"> |
||||
|
<el-button |
||||
|
type="success" |
||||
|
icon="el-icon-edit" |
||||
|
size="mini" |
||||
|
:disabled="single" |
||||
|
@click="handleUpdate" |
||||
|
v-hasPermi="['build: eval:edit']" |
||||
|
>修改</el-button |
||||
|
> |
||||
|
</el-col> |
||||
|
<el-col :span="1.5"> |
||||
|
<el-button |
||||
|
type="danger" |
||||
|
icon="el-icon-delete" |
||||
|
size="mini" |
||||
|
:disabled="multiple" |
||||
|
@click="handleDelete" |
||||
|
v-hasPermi="['build: eval:remove']" |
||||
|
>删除</el-button |
||||
|
> |
||||
|
</el-col> |
||||
|
<el-col :span="1.5"> |
||||
|
<el-button |
||||
|
type="warning" |
||||
|
icon="el-icon-download" |
||||
|
size="mini" |
||||
|
@click="handleExport" |
||||
|
v-hasPermi="['build: eval:export']" |
||||
|
>导出</el-button |
||||
|
> |
||||
|
</el-col> |
||||
|
<right-toolbar |
||||
|
:showSearch.sync="showSearch" |
||||
|
@queryTable="getList" |
||||
|
></right-toolbar> |
||||
|
</el-row> |
||||
|
|
||||
|
<el-table |
||||
|
v-loading="loading" |
||||
|
:data="evalList" |
||||
|
@selection-change="handleSelectionChange" |
||||
|
> |
||||
|
<el-table-column type="selection" width="55" align="center" /> |
||||
|
<el-table-column label="序号" type="index" width="50" align="center" /> |
||||
|
|
||||
|
<el-table-column |
||||
|
label="阶段性交付成果" |
||||
|
align="center" |
||||
|
prop="phasedPaymentResults" |
||||
|
/> |
||||
|
<el-table-column |
||||
|
label="交付成果附件" |
||||
|
align="center" |
||||
|
prop="deliverablesAttachment" |
||||
|
/> |
||||
|
<el-table-column label="合同编号" align="center" prop="contractNumber" /> |
||||
|
<el-table-column |
||||
|
label="评价描述" |
||||
|
align="center" |
||||
|
prop="evaluationDescription" |
||||
|
/> |
||||
|
<el-table-column |
||||
|
label="当前季度评价状态" |
||||
|
align="center" |
||||
|
prop="evaluationStatus" |
||||
|
/> |
||||
|
<el-table-column label="项目编码" align="center" prop="proCode" /> |
||||
|
<el-table-column label="项目编号" align="center" prop="proNo" /> |
||||
|
<el-table-column label="创建人" align="center" prop="createUid" /> |
||||
|
<el-table-column |
||||
|
label="创建时间" |
||||
|
align="center" |
||||
|
prop="createTime" |
||||
|
width="180" |
||||
|
> |
||||
|
<template slot-scope="scope"> |
||||
|
<span>{{ parseTime(scope.row.createTime, "{y}-{m}-{d}") }}</span> |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
<el-table-column label="UPDATE_UID" align="center" prop="updateUid" /> |
||||
|
<el-table-column |
||||
|
label="UPDATE_UID" |
||||
|
align="center" |
||||
|
prop="updateTime" |
||||
|
width="180" |
||||
|
> |
||||
|
<template slot-scope="scope"> |
||||
|
<span>{{ parseTime(scope.row.updateTime, "{y}-{m}-{d}") }}</span> |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
<el-table-column label="数源部门" align="center" prop="owerDept" /> |
||||
|
<el-table-column |
||||
|
label="操作" |
||||
|
align="center" |
||||
|
class-name="small-padding fixed-width" |
||||
|
> |
||||
|
<template slot-scope="scope"> |
||||
|
<el-button |
||||
|
size="mini" |
||||
|
type="text" |
||||
|
icon="el-icon-edit" |
||||
|
@click="handleUpdate(scope.row)" |
||||
|
v-hasPermi="['build: eval:edit']" |
||||
|
>修改</el-button |
||||
|
> |
||||
|
<el-button |
||||
|
size="mini" |
||||
|
type="text" |
||||
|
icon="el-icon-delete" |
||||
|
@click="handleDelete(scope.row)" |
||||
|
v-hasPermi="['build: eval:remove']" |
||||
|
>删除</el-button |
||||
|
> |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
</el-table> |
||||
|
|
||||
|
<pagination |
||||
|
v-show="total > 0" |
||||
|
:total="total" |
||||
|
:page.sync="queryParams.pageNum" |
||||
|
:limit.sync="queryParams.pageSize" |
||||
|
@pagination="getList" |
||||
|
/> |
||||
|
|
||||
|
<!-- 添加或修改合同履约评价对话框 --> |
||||
|
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body> |
||||
|
<el-form ref="form" :model="form" :rules="rules" label-width="80px"> |
||||
|
<el-form-item label="阶段性交付成果" prop="phasedPaymentResults"> |
||||
|
<el-input |
||||
|
v-model="form.phasedPaymentResults" |
||||
|
placeholder="请输入阶段性交付成果" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="交付成果附件" prop="deliverablesAttachment"> |
||||
|
<el-input |
||||
|
v-model="form.deliverablesAttachment" |
||||
|
type="textarea" |
||||
|
placeholder="请输入内容" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="合同编号" prop="contractNumber"> |
||||
|
<el-input |
||||
|
v-model="form.contractNumber" |
||||
|
placeholder="请输入合同编号" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="评价描述" prop="evaluationDescription"> |
||||
|
<el-input |
||||
|
v-model="form.evaluationDescription" |
||||
|
placeholder="请输入评价描述" |
||||
|
/> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="当前季度评价状态"> |
||||
|
<el-radio-group v-model="form.evaluationStatus"> |
||||
|
<el-radio label="1">请选择字典生成</el-radio> |
||||
|
</el-radio-group> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="项目编码" prop="proCode"> |
||||
|
<el-input v-model="form.proCode" placeholder="请输入项目编码" /> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="项目编号" prop="proNo"> |
||||
|
<el-input v-model="form.proNo" placeholder="请输入项目编号" /> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="创建人" prop="createUid"> |
||||
|
<el-input v-model="form.createUid" placeholder="请输入创建人" /> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="UPDATE_UID" prop="updateUid"> |
||||
|
<el-input v-model="form.updateUid" placeholder="请输入UPDATE_UID" /> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="数源部门" prop="owerDept"> |
||||
|
<el-input v-model="form.owerDept" placeholder="请输入数源部门" /> |
||||
|
</el-form-item> |
||||
|
</el-form> |
||||
|
<div slot="footer" class="dialog-footer"> |
||||
|
<el-button type="primary" @click="submitForm">确 定</el-button> |
||||
|
<el-button @click="cancel">取 消</el-button> |
||||
|
</div> |
||||
|
</el-dialog> |
||||
|
</div> |
||||
</template> |
</template> |
||||
|
|
||||
|
<script> |
||||
|
import { |
||||
|
listeval, |
||||
|
geteval, |
||||
|
deleval, |
||||
|
addeval, |
||||
|
updateeval, |
||||
|
exporteval, |
||||
|
} from "@/api/build/eval"; |
||||
|
|
||||
|
export default { |
||||
|
name: " eval", |
||||
|
data() { |
||||
|
return { |
||||
|
// 遮罩层 |
||||
|
loading: true, |
||||
|
// 选中数组 |
||||
|
ids: [], |
||||
|
// 非单个禁用 |
||||
|
single: true, |
||||
|
// 非多个禁用 |
||||
|
multiple: true, |
||||
|
// 显示搜索条件 |
||||
|
showSearch: true, |
||||
|
// 总条数 |
||||
|
total: 0, |
||||
|
// 合同履约评价表格数据 |
||||
|
evalList: [], |
||||
|
// 弹出层标题 |
||||
|
title: "", |
||||
|
// 是否显示弹出层 |
||||
|
open: false, |
||||
|
// 查询参数 |
||||
|
queryParams: { |
||||
|
pageNum: 1, |
||||
|
pageSize: 10, |
||||
|
ids: null, |
||||
|
data: { |
||||
|
phasedPaymentResults: null, |
||||
|
deliverablesAttachment: null, |
||||
|
contractNumber: null, |
||||
|
evaluationDescription: null, |
||||
|
evaluationStatus: null, |
||||
|
proCode: null, |
||||
|
proNo: null, |
||||
|
createUid: null, |
||||
|
createTime: null, |
||||
|
updateUid: null, |
||||
|
updateTime: null, |
||||
|
owerDept: null, |
||||
|
}, |
||||
|
}, |
||||
|
// 表单参数 |
||||
|
form: {}, |
||||
|
// 表单校验 |
||||
|
rules: {}, |
||||
|
}; |
||||
|
}, |
||||
|
created() { |
||||
|
this.getList(); |
||||
|
}, |
||||
|
methods: { |
||||
|
/** 查询合同履约评价列表 */ |
||||
|
getList() { |
||||
|
this.loading = true; |
||||
|
listeval(this.queryParams).then((response) => { |
||||
|
this.evalList = response.records; |
||||
|
this.total = response.total; |
||||
|
this.loading = false; |
||||
|
}); |
||||
|
}, |
||||
|
// 取消按钮 |
||||
|
cancel() { |
||||
|
this.open = false; |
||||
|
this.reset(); |
||||
|
}, |
||||
|
// 表单重置 |
||||
|
reset() { |
||||
|
this.form = { |
||||
|
id: null, |
||||
|
phasedPaymentResults: null, |
||||
|
deliverablesAttachment: null, |
||||
|
contractNumber: null, |
||||
|
evaluationDescription: null, |
||||
|
evaluationStatus: "0", |
||||
|
proCode: null, |
||||
|
proNo: null, |
||||
|
createUid: null, |
||||
|
createTime: null, |
||||
|
updateUid: null, |
||||
|
updateTime: null, |
||||
|
owerDept: null, |
||||
|
}; |
||||
|
this.resetForm("form"); |
||||
|
}, |
||||
|
// 查询表单重置 |
||||
|
resetQueryForm() { |
||||
|
this.queryParams = { |
||||
|
pageNum: 1, |
||||
|
pageSize: 10, |
||||
|
data: { |
||||
|
id: null, |
||||
|
phasedPaymentResults: null, |
||||
|
deliverablesAttachment: null, |
||||
|
contractNumber: null, |
||||
|
evaluationDescription: null, |
||||
|
evaluationStatus: "0", |
||||
|
proCode: null, |
||||
|
proNo: null, |
||||
|
createUid: null, |
||||
|
createTime: null, |
||||
|
updateUid: null, |
||||
|
updateTime: null, |
||||
|
owerDept: null, |
||||
|
}, |
||||
|
}; |
||||
|
this.resetForm("form"); |
||||
|
}, |
||||
|
/** 搜索按钮操作 */ |
||||
|
handleQuery() { |
||||
|
this.queryParams.pageNum = 1; |
||||
|
this.getList(); |
||||
|
}, |
||||
|
/** 重置按钮操作 */ |
||||
|
resetQuery() { |
||||
|
this.resetQueryForm(); |
||||
|
this.handleQuery(); |
||||
|
}, |
||||
|
// 多选框选中数据 |
||||
|
handleSelectionChange(selection) { |
||||
|
this.ids = selection.map((item) => item.id); |
||||
|
this.single = selection.length !== 1; |
||||
|
this.multiple = !selection.length; |
||||
|
}, |
||||
|
/** 新增按钮操作 */ |
||||
|
handleAdd() { |
||||
|
this.reset(); |
||||
|
this.open = true; |
||||
|
this.title = "添加合同履约评价"; |
||||
|
}, |
||||
|
/** 修改按钮操作 */ |
||||
|
handleUpdate(row) { |
||||
|
this.reset(); |
||||
|
const id = row.id || this.ids; |
||||
|
geteval(id).then((response) => { |
||||
|
this.form = response.data; |
||||
|
this.open = true; |
||||
|
this.title = "修改合同履约评价"; |
||||
|
}); |
||||
|
}, |
||||
|
/** 提交按钮 */ |
||||
|
submitForm() { |
||||
|
this.$refs["form"].validate((valid) => { |
||||
|
if (valid) { |
||||
|
if (this.form.id != null) { |
||||
|
updateeval(this.form).then((response) => { |
||||
|
if (response.code === 200) { |
||||
|
this.msgSuccess("修改成功"); |
||||
|
this.open = false; |
||||
|
this.getList(); |
||||
|
} |
||||
|
}); |
||||
|
} else { |
||||
|
addeval(this.form).then((response) => { |
||||
|
if (response.code === 200) { |
||||
|
this.msgSuccess("新增成功"); |
||||
|
this.open = false; |
||||
|
this.getList(); |
||||
|
} |
||||
|
}); |
||||
|
} |
||||
|
} |
||||
|
}); |
||||
|
}, |
||||
|
/** 删除按钮操作 */ |
||||
|
handleDelete(row) { |
||||
|
const ids = row.id || this.ids; |
||||
|
if (ids) { |
||||
|
this.$confirm("是否删除选中的数据?", "警告", { |
||||
|
confirmButtonText: "确定", |
||||
|
cancelButtonText: "取消", |
||||
|
type: "warning", |
||||
|
}) |
||||
|
.then(function () { |
||||
|
return deleval(ids); |
||||
|
}) |
||||
|
.then(() => { |
||||
|
this.getList(); |
||||
|
this.msgSuccess("删除成功"); |
||||
|
}) |
||||
|
.catch(function () {}); |
||||
|
} else { |
||||
|
this.$message.warning("请选择要删除的数据!!"); |
||||
|
} |
||||
|
}, |
||||
|
/** 导出按钮操作 */ |
||||
|
handleExport() { |
||||
|
const queryParams = this.queryParams; |
||||
|
let message = "是否确认导出所有的数据项?"; |
||||
|
if (this.ids) { |
||||
|
message = "是否确认导出选中的数据项?"; |
||||
|
queryParams.ids = this.ids; |
||||
|
} |
||||
|
this.$confirm(message, "警告", { |
||||
|
confirmButtonText: "确定", |
||||
|
cancelButtonText: "取消", |
||||
|
type: "warning", |
||||
|
}) |
||||
|
.then(function () { |
||||
|
return exporteval(queryParams); |
||||
|
}) |
||||
|
.then((response) => { |
||||
|
this.downloadFile(response, true, response.msg); |
||||
|
// this.download(response.msg); |
||||
|
}) |
||||
|
.catch(function () {}); |
||||
|
}, |
||||
|
}, |
||||
|
}; |
||||
|
</script> |
||||
|
Loading…
Reference in new issue