取消默认选中,增加结算状态

This commit is contained in:
syruan 2025-08-01 15:15:22 +08:00
parent f4930c5e31
commit 4cb4f32c5d
3 changed files with 87 additions and 114 deletions

View File

@ -189,9 +189,9 @@ export default {
} else { } else {
this.userId = sessionStorage.getItem('userId') this.userId = sessionStorage.getItem('userId')
// //
if (this.statusOptions.length > 0) { // if (this.statusOptions.length > 0) {
this.queryParams.taskStatus = this.statusOptions[0].value // this.queryParams.taskStatus = this.statusOptions[0].value
} // }
// if (this.statusOptions.length > 1) { // if (this.statusOptions.length > 1) {
// this.queryParams.taskStatus = this.statusOptions[1].value // this.queryParams.taskStatus = this.statusOptions[1].value
// } // }

View File

@ -13,17 +13,6 @@
:multiple="true" :multiple="true"
> >
</treeselect> </treeselect>
<!-- <el-cascader v-model="unitIds"
:show-all-levels="false"
:options="unitList"
:props="selectTreeProps"
filterable
clearable
collapse-tags
@change="unitChange"
popper-class="popper-select"
placeholder="请选择单位"
></el-cascader> -->
</el-form-item> </el-form-item>
<el-form-item prop="projectIds"> <el-form-item prop="projectIds">
<treeselect <treeselect
@ -33,15 +22,6 @@
noChildrenText="没有数据了" noOptionsText="没有数据" noResultsText="没有搜索结果" noChildrenText="没有数据了" noOptionsText="没有数据" noResultsText="没有搜索结果"
placeholder="请选择结算工程" @select="proChange" :disabled="unitIds.length == 0" placeholder="请选择结算工程" @select="proChange" :disabled="unitIds.length == 0"
/> />
<!-- <el-cascader v-model="projectIds"
:show-all-levels="false"
:options="proList"
:props="selectTreeProps"
filterable clearable
collapse-tags
@change="proChange"
placeholder="请选择工程"
></el-cascader> -->
</el-form-item> </el-form-item>
<el-form-item prop="agreementCode"> <el-form-item prop="agreementCode">
<el-input v-model="queryParams.agreementCode" placeholder="请输入协议号" clearable style="width: 240px"/> <el-input v-model="queryParams.agreementCode" placeholder="请输入协议号" clearable style="width: 240px"/>
@ -82,13 +62,6 @@
@click="handleApplyList" @click="handleApplyList"
>批量结算</el-button >批量结算</el-button
> >
<!-- <el-button
type="primary"
plain
size="mini"
@click="openPrintDialog"
>协议书</el-button
> -->
</el-form-item> </el-form-item>
</el-form> </el-form>
@ -111,26 +84,29 @@
</el-table-column> </el-table-column>
<el-table-column label="结算状态" align="center" prop="sltStatus" :show-overflow-tooltip="true"> <el-table-column label="结算状态" align="center" prop="sltStatus" :show-overflow-tooltip="true">
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.cost_status" :value="scope.row.sltStatus"/> <dict-tag :options="dict.type.cost_status" :value="scope.row.isSlt"/>
</template> </template>
<!-- <template slot-scope="scope"> <!-- <template slot-scope="scope">-->
<span v-if="scope.row.sltStatus == '0'">未结算</span> <!-- <dict-tag :value="scope.row.sltStatus">-->
<span v-if="scope.row.sltStatus == '1'">已结算</span> <!-- <el-tag size="mini" type="success" v-if="scope.row.auditStatus == 1">已结算</el-tag>-->
<span v-if="scope.row.sltStatus == '2'">已审核</span> <!-- <el-tag size="mini" type="danger" v-if="scope.row.auditStatus == 2">部分结算</el-tag>-->
<span v-if="scope.row.sltStatus == '3'">已驳回</span> <!-- <el-tag size="mini" type="primary" v-if="scope.row.auditStatus == 0">未结算</el-tag>-->
</template> --> <!-- </dict-tag>-->
<!-- <span v-if="scope.row.sltStatus == '0'">未结算</span>-->
<!-- <span v-if="scope.row.sltStatus == '1'">已结算</span>-->
<!-- <span v-if="scope.row.sltStatus == '2'">部分结算</span>-->
<!-- </template>-->
</el-table-column> </el-table-column>
<el-table-column label="备注" align="center" prop="remark" :show-overflow-tooltip="true"/> <el-table-column label="备注" align="center" prop="remark" :show-overflow-tooltip="true"/>
<!-- <el-table-column label="租赁期限(天)" align="center" prop="leaseDay" :show-overflow-tooltip="true" />
<el-table-column label="授权人" align="center" prop="authPerson" :show-overflow-tooltip="true" />
<el-table-column label="联系电话 " align="center" prop="phone" :show-overflow-tooltip="true" /> -->
<el-table-column label="操作" align="center" width="300" class-name="small-padding fixed-width"> <el-table-column label="操作" align="center" width="300" class-name="small-padding fixed-width">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button size="mini" type="primary" icon="el-icon-edit" <el-button size="mini" type="primary" icon="el-icon-edit"
@click="handleApply(scope.row)" @click="handleApply(scope.row)"
v-if="scope.row.sltStatus == '0' || (scope.row.sltStatus == '3')" v-if="scope.row.isSlt == '0' || (scope.row.isSlt == '2')"
>结算申请</el-button> >结算申请
</el-button>
<el-button <el-button
type="primary" type="primary"
plain plain
@ -285,12 +261,6 @@ export default {
value: 'id', value: 'id',
multiple: true,//false multiple: true,//false
}, },
// statusList: [
// { id: '1', name: '' },
// { id: '2', name: '' },
// { id: '3', name: '' },
// { id: '4', name: '' },
// ],
// //
tableList: [], tableList: [],
// //

View File

@ -8,15 +8,15 @@
:show-count="true" style="width: 240px" :disable-branch-nodes="true" :show-count="true" style="width: 240px" :disable-branch-nodes="true"
noChildrenText="没有数据了" noOptionsText="没有数据" noResultsText="没有搜索结果" noChildrenText="没有数据了" noOptionsText="没有数据" noResultsText="没有搜索结果"
placeholder="请选择结算单位" @select="unitChange" placeholder="请选择结算单位" @select="unitChange"
/> />
<!-- <el-cascader v-model="unitIds" <!-- <el-cascader v-model="unitIds"
:show-all-levels="false" :show-all-levels="false"
:options="unitList" :options="unitList"
:props="selectTreeProps" :props="selectTreeProps"
filterable filterable
clearable clearable
collapse-tags collapse-tags
@change="unitChange" @change="unitChange"
placeholder="请选择单位" placeholder="请选择单位"
></el-cascader> --> ></el-cascader> -->
</el-form-item> </el-form-item>
@ -33,9 +33,9 @@
:options="proList" :options="proList"
:props="selectTreeProps" :props="selectTreeProps"
filterable clearable filterable clearable
collapse-tags collapse-tags
@change="proChange" @change="proChange"
placeholder="请选择工程" placeholder="请选择工程"
></el-cascader> --> ></el-cascader> -->
</el-form-item> </el-form-item>
<el-form-item prop="agreementCode"> <el-form-item prop="agreementCode">
@ -44,25 +44,16 @@
<el-form-item prop="sltStatus"> <el-form-item prop="sltStatus">
<el-select v-model="queryParams.sltStatus" placeholder="请选择结算状态" clearable filterable> <el-select v-model="queryParams.sltStatus" placeholder="请选择结算状态" clearable filterable>
<el-option <el-option
v-for="dict in dict.type.cost_status" v-for="dict in statusList"
:key="dict.value" :key="dict.id"
:label="dict.label" :label="dict.name"
v-if="dict.value !== '0'" :value="dict.id"
:value="dict.value"
></el-option> ></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery" >查询</el-button> <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery" >查询</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery" >重置</el-button> <el-button icon="el-icon-refresh" size="mini" @click="resetQuery" >重置</el-button>
<!-- <el-button
type="primary"
plain
size="mini"
@click="openPrintDialog"
>协议书</el-button
> -->
</el-form-item> </el-form-item>
</el-form> </el-form>
@ -78,26 +69,38 @@
<el-table-column label="结算单位" align="center" prop="unitName" /> <el-table-column label="结算单位" align="center" prop="unitName" />
<el-table-column label="结算工程" align="center" prop="projectName" /> <el-table-column label="结算工程" align="center" prop="projectName" />
<el-table-column label="合计费用(元)" align="center" prop="costs" :show-overflow-tooltip="true"> <el-table-column label="合计费用(元)" align="center" prop="costs" :show-overflow-tooltip="true">
<template slot-scope="scope" v-if="scope.row.costs != null && scope.row.costs!=''"> <template slot-scope="scope" v-if="scope.row.costs != null && scope.row.costs != ''">
{{ scope.row.costs.toFixed(2) }} {{ scope.row.costs.toFixed(2) }}
</template> </template>
<template slot-scope="scope" v-if="scope.row.costs == null || scope.row.costs === '' || scope.row.costs === 0">
{{ 0.00 }}
</template>
</el-table-column> </el-table-column>
<el-table-column label="结算类型" align="center" prop="sltStatus" :show-overflow-tooltip="true">
<template slot-scope="scope">
<el-tag v-if="scope.row.settlementType === 1" effect="plain">工器具</el-tag>
<el-tag type="warning" v-if="scope.row.settlementType === 2" effect="plain">安全工器具</el-tag>
<el-tag v-if="scope.row.settlementType == null || scope.row.settlementType === 0" effect="plain">总费用</el-tag>
</template>
</el-table-column>
<el-table-column label="审批人" align="center" prop="auditor" :show-overflow-tooltip="true"/> <el-table-column label="审批人" align="center" prop="auditor" :show-overflow-tooltip="true"/>
<el-table-column label="审批时间" align="center" prop="auditTime" width="100"/> <el-table-column label="审批时间" align="center" prop="auditTime" width="100"/>
<el-table-column label="结算状态" align="center" prop="sltStatus" :show-overflow-tooltip="true"> <el-table-column label="结算状态" align="center" prop="sltStatus" :show-overflow-tooltip="true">
<!-- <template slot-scope="scope">-->
<!-- <dict-tag :options="dict.type.cost_status" :value="scope.row.sltStatus"/>-->
<!-- </template>-->
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.cost_status" :value="scope.row.sltStatus"/> <el-tag v-if="scope.row.sltStatus == '1'">待审核</el-tag>
<el-tag type="success" v-if="scope.row.sltStatus == '2'">审核通过</el-tag>
<el-tag type="danger" v-if="scope.row.sltStatus == '3'">审核驳回</el-tag>
</template> </template>
<!-- <template slot-scope="scope"> </el-table-column>
<span v-if="scope.row.status == '0'">待审核</span>
<span v-if="scope.row.status == '1'">审核通过</span>
<span v-if="scope.row.status == '2'">审核驳回</span>
</template> -->
</el-table-column>
<el-table-column label="操作" align="center" width="300" class-name="small-padding fixed-width"> <el-table-column label="操作" align="center" width="300" class-name="small-padding fixed-width">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button size="mini" type="normal" icon="el-icon-search" @click="handleView(scope.row)">查看</el-button> <el-button size="mini" type="normal" icon="el-icon-search" @click="handleView(scope.row)">查看</el-button>
<el-button size="mini" type="primary" icon="el-icon-edit" <el-button size="mini" type="primary" icon="el-icon-edit"
@click="handleExame(scope.row)" v-if="scope.row.sltStatus == '1'" >审批</el-button> @click="handleExame(scope.row)" v-if="scope.row.sltStatus == '1'" >审批</el-button>
<!-- <el-button size="mini" type="danger" icon="el-icon-delete" <!-- <el-button size="mini" type="danger" icon="el-icon-delete"
@click="handleDelete(scope.row)" @click="handleDelete(scope.row)"
@ -129,7 +132,7 @@
<el-radio v-model="aform.status" label="3">不通过</el-radio> <el-radio v-model="aform.status" label="3">不通过</el-radio>
</el-form-item> </el-form-item>
<el-form-item label="原因" prop="remark"> <el-form-item label="原因" prop="remark">
<el-input v-model="aform.remark" maxlength="100" placeholder="请输入" <el-input v-model="aform.remark" maxlength="100" placeholder="请输入"
show-word-limit size="small" style="width: 350px" type="textarea" rows="4"></el-input> show-word-limit size="small" style="width: 350px" type="textarea" rows="4"></el-input>
</el-form-item> </el-form-item>
</el-form> </el-form>
@ -150,9 +153,9 @@
<div class="item" style=" width: 65%; flex-shrink: 0; margin-bottom: 5px; font-size: 14px;"> <div class="item" style=" width: 65%; flex-shrink: 0; margin-bottom: 5px; font-size: 14px;">
</div> </div>
<div class="item" style=" width: 35%; flex-shrink: 0; margin-bottom: 5px; font-size: 14px;"> <div class="item" style=" width: 35%; flex-shrink: 0; margin-bottom: 5px; font-size: 14px;">
<span>协议号{{ agreementContent.agreementCode }}</span> <span>协议号{{ agreementContent.agreementCode }}</span>
</div> </div>
</div> </div>
<div class="tabelColumn"> <div class="tabelColumn">
<div class="columnLabel" style="width: 20%;">工程名称</div> <div class="columnLabel" style="width: 20%;">工程名称</div>
<div class="columnContent" style="width: 80%;">{{ agreementContent.projectName }}</div> <div class="columnContent" style="width: 80%;">{{ agreementContent.projectName }}</div>
@ -191,15 +194,15 @@
<div class="columnContent" style="width: 40%;">{{ agreementContent.costAllUpper }}</div> <div class="columnContent" style="width: 40%;">{{ agreementContent.costAllUpper }}</div>
<div class="columnContent" style="width: 40%;"> {{ agreementContent.costAll }}</div> <div class="columnContent" style="width: 40%;"> {{ agreementContent.costAll }}</div>
</div> </div>
<div class="tabelColumn"> <div class="tabelColumn">
<div class="columnLabel" style="width: 20%;">说明</div> <div class="columnLabel" style="width: 20%;">说明</div>
<div class="columnContent" style="width: 80%;">本协议一式三份甲方一份乙方一份经双方签字后生效</div> <div class="columnContent" style="width: 80%;">本协议一式三份甲方一份乙方一份经双方签字后生效</div>
</div> </div>
<div class="tabelColumn" style="border: 1px solid #9c9c9c;"> <div class="tabelColumn" style="border: 1px solid #9c9c9c;">
<div class="columnLabel" style="width: 20%;">备注</div> <div class="columnLabel" style="width: 20%;">备注</div>
<div class="columnContent" style="width: 80%;">此费用仅为在机具设备分公司发生费用未计从项目部领用机具费用</div> <div class="columnContent" style="width: 80%;">此费用仅为在机具设备分公司发生费用未计从项目部领用机具费用</div>
</div> </div>
<div class="fillIn" style="margin-top: 20px; display: flex; justify-content: space-between;"> <div class="fillIn" style="margin-top: 20px; display: flex; justify-content: space-between;">
<div class="item" style="width: 33%"> <div class="item" style="width: 33%">
@ -235,8 +238,8 @@
import { import {
getProjectList, getProjectList,
getUnitList, getUnitList,
getAgreementInfoById, getAgreementInfoById,
} from '@/api/back/index.js' } from '@/api/back/index.js'
import { getSltList,costExamine, getSltInfo } from '@/api/cost/cost' import { getSltList,costExamine, getSltInfo } from '@/api/cost/cost'
import { toChineseAmount } from '@/utils/bonus.js' import { toChineseAmount } from '@/utils/bonus.js'
import vueEasyPrint from "vue-easy-print"; import vueEasyPrint from "vue-easy-print";
@ -268,17 +271,17 @@ export default {
projectIds: null, projectIds: null,
selectTreeProps: { selectTreeProps: {
children: 'children', children: 'children',
label: 'name', label: 'name',
value: 'id', value: 'id',
// multiple: true,//false // multiple: true,//false
}, },
// statusList: [ statusList: [
// { id: '0', name: '' }, { id: '1', name: '待审核' },
// { id: '1', name: '' }, { id: '2', name: '审核通过' },
// { id: '2', name: '' }, { id: '3', name: '审核驳回' },
// ], // ], //
// //
tableList: [], tableList: [],
// //
queryParams: { queryParams: {
pageNum: 1, pageNum: 1,
@ -329,7 +332,7 @@ export default {
label: node.name, label: node.name,
children: node.children, children: node.children,
}; };
}, },
// //
async GetUnitData() { async GetUnitData() {
const params = { const params = {
@ -338,7 +341,7 @@ export default {
const res = await getUnitList(params) const res = await getUnitList(params)
this.unitList = res.data; this.unitList = res.data;
this.getAgreementInfo() this.getAgreementInfo()
}, },
unitChange(val){ unitChange(val){
// if(val&&val.length>0){ // if(val&&val.length>0){
@ -352,8 +355,8 @@ export default {
this.queryParams.agreementId = null this.queryParams.agreementId = null
this.queryParams.agreementCode = null this.queryParams.agreementCode = null
this.GetProData() this.GetProData()
},500) },500)
}, },
// //
async GetProData() { async GetProData() {
const params = { const params = {
@ -361,8 +364,8 @@ export default {
} }
const res = await getProjectList(params) const res = await getProjectList(params)
this.proList = res.data; this.proList = res.data;
this.getAgreementInfo() this.getAgreementInfo()
}, },
proChange(val){ proChange(val){
// if(val&&val.length>0){ // if(val&&val.length>0){
@ -373,7 +376,7 @@ export default {
// this.GetUnitData() // this.GetUnitData()
setTimeout(()=>{ setTimeout(()=>{
this.GetUnitData() this.GetUnitData()
},500) },500)
}, },
// id // id
async getAgreementInfo() { async getAgreementInfo() {
@ -392,10 +395,10 @@ export default {
this.GetProData() this.GetProData()
} else { } else {
this.queryParams.agreementId = res.data.agreementId this.queryParams.agreementId = res.data.agreementId
this.queryParams.agreementCode = res.data.agreementCode this.queryParams.agreementCode = res.data.agreementCode
} }
} }
}, },
/** 查询列表 */ /** 查询列表 */
getList() { getList() {
@ -413,10 +416,10 @@ export default {
this.getList() this.getList()
}, },
/** 重置按钮操作 */ /** 重置按钮操作 */
resetQuery() { resetQuery() {
this.queryParams={ this.queryParams={
pageNum: 1, pageNum: 1,
pageSize: 10, pageSize: 10,
sltStatus: '', sltStatus: '',
isCommit:'', isCommit:'',
unitId: null, unitId: null,
@ -432,13 +435,13 @@ export default {
let arr = []; let arr = [];
arr.push(row); arr.push(row);
this.$emit("goDetail",JSON.stringify(arr)); this.$emit("goDetail",JSON.stringify(arr));
}, },
// //
handleExame(row) { handleExame(row) {
this.id = row.id this.id = row.id
this.agreementIdTemp = row.agreementId this.agreementIdTemp = row.agreementId
this.applyVisible = true this.applyVisible = true
}, },
// //
submitListForm() { submitListForm() {
let param = { let param = {
@ -503,19 +506,19 @@ export default {
display: flex; display: flex;
align-items: center; align-items: center;
border: 1px solid #9c9c9c; border: 1px solid #9c9c9c;
// margin-bottom: 1px; // margin-bottom: 1px;
border-bottom: none; border-bottom: none;
} }
.columnLabel { .columnLabel {
height: 50px; height: 50px;
line-height: 50px; line-height: 50px;
text-align: center; text-align: center;
border-left: none; border-left: none;
} }
.columnContent { .columnContent {
height: 50px; height: 50px;
line-height: 50px; line-height: 50px;
text-align: center; text-align: center;
border-left: 1px solid #9c9c9c; border-left: 1px solid #9c9c9c;
} }
</style> </style>