This commit is contained in:
X_Rian 2024-05-30 20:19:04 +08:00
parent 8994bece17
commit 3d35b31768
4 changed files with 189 additions and 417 deletions

View File

@ -24,25 +24,11 @@
>
</el-option>
</el-select> -->
<el-select
ref="selectRef"
v-model="selectVal"
placeholder="请选择"
style="width: 100%;margin-top: 10px;"
size="medium"
clearable
@change="selectChange"
>
<el-select ref="selectRef" v-model="selectVal" placeholder="请选择" style="width: 100%;margin-top: 10px;"
size="medium" clearable @change="selectChange">
<el-option style="height:auto" :value="[]">
<el-tree
:data="areaList"
node-key="id"
ref="groupTree"
:default-expanded-keys="defaultExpandArr"
:props="defaultAreaProps"
:default-expand-all="false"
@node-click="treeAreaClick"
>
<el-tree :data="areaList" node-key="id" ref="groupTree" :default-expanded-keys="defaultExpandArr"
:props="defaultAreaProps" :default-expand-all="false" @node-click="treeAreaClick">
</el-tree>
</el-option>
</el-select>
@ -52,35 +38,23 @@
承包商列表
</p>
<vue-scroll style="height: calc(100% - 30px)" v-if="level1CompanyData.length > 0">
<el-tree
:data="level1CompanyData"
:props="defaultProps"
default-expand-all
node-key="id"
ref="tree"
>
<el-tree :data="level1CompanyData" :props="defaultProps" default-expand-all node-key="id" ref="tree">
<span class="custom-tree-node" slot-scope="{ node, data }">
<span
style="
width: 160px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
display: inline-block;
"
@click="treeClick(data)"
:class="
data.videoName
? 'videoName'
: data.projectName
? 'projectName'
: data.companyType == 2
? 'companyName2'
: ''
"
:title="node.label"
>{{ node.label }}</span
>
<span style="
width: 160px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
display: inline-block;
" @click="treeClick(data)" :class="
data.videoName
? 'videoName'
: data.projectName
? 'projectName'
: data.companyType == 2
? 'companyName2'
: ''
" :title="node.label">{{ node.label }}</span>
</span>
</el-tree>
</vue-scroll>
@ -93,148 +67,70 @@
</div>
<div class="table-content">
<div class="searchBox whiteBlock">
<el-form
:inline="true"
size="medium"
:model="queryInfo"
class="demo-form-inline"
>
<el-form :inline="true" size="medium" :model="queryInfo" class="demo-form-inline">
<el-form-item label="分部分项工程名称">
<el-input
v-model="queryInfo.taskName"
placeholder="请输入"
></el-input>
<el-input v-model="queryInfo.taskName" placeholder="请输入"></el-input>
</el-form-item>
<el-form-item label="状态">
<el-select v-model="queryInfo.status" placeholder="请选择">
<el-option
v-for="(item, index) in options"
:key="index"
:label="item.label"
:value="item.value"
>
<el-option v-for="(item, index) in options" :key="index" :label="item.label" :value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="实际完成日期">
<el-date-picker
v-model="daterange"
@change="changeDate"
type="daterange"
:range-separator="$t('message.energyManage.to')"
:start-placeholder="$t('message.energyManage.start')"
:end-placeholder="$t('message.energyManage.end')"
value-format="yyyy-MM-dd"
>
<el-date-picker v-model="daterange" @change="changeDate" type="daterange"
:range-separator="$t('message.energyManage.to')" :start-placeholder="$t('message.energyManage.start')"
:end-placeholder="$t('message.energyManage.end')" value-format="yyyy-MM-dd">
</el-date-picker>
</el-form-item>
<el-form-item>
<el-button v-permission="{key: 'fbfx_query', menuPath: '/project/progressManagementAg/divisionSubManage'}" type="primary" plain @click="getProgressListData" :disabled="!treeData.id"
>查询</el-button
>
<el-button v-permission="{key: 'fbfx_refreshi', menuPath: '/project/progressManagementAg/divisionSubManage'}" type="warning" plain @click="refreshBtn" :disabled="!treeData.id"
>刷新</el-button
>
<el-button v-permission="{ key: 'fbfx_query', menuPath: '/project/progressManagementAg/divisionSubManage' }"
type="primary" plain @click="getProgressListData" :disabled="!treeData.id">查询</el-button>
<el-button
v-permission="{key: 'fbfx_add', menuPath: '/project/progressManagementAg/divisionSubManage'}"
class="expintBtn"
size="medium"
type="primary"
plain
:disabled="!treeData.id"
@click="addBefore(1, null)"
>
v-permission="{ key: 'fbfx_refreshi', menuPath: '/project/progressManagementAg/divisionSubManage' }"
type="warning" plain @click="refreshBtn" :disabled="!treeData.id">刷新</el-button>
<el-button v-permission="{ key: 'fbfx_add', menuPath: '/project/progressManagementAg/divisionSubManage' }"
class="expintBtn" size="medium" type="primary" plain :disabled="!treeData.id"
@click="addBefore(1, null)">
新增
</el-button>
</el-form-item>
<el-form-item>
<el-button
v-permission="{key: 'fbfx_DownloadTemplate', menuPath: '/project/progressManagementAg/divisionSubManage'}"
class="expintBtn"
size="medium"
type="primary"
:disabled="!treeData.id"
@click="downloadFn(1)"
>
v-permission="{ key: 'fbfx_DownloadTemplate', menuPath: '/project/progressManagementAg/divisionSubManage' }"
class="expintBtn" size="medium" type="primary" :disabled="!treeData.id" @click="downloadFn(1)">
<!-- <a class="down" :href="downUrl" download>下载模板</a> -->
下载模板
</el-button>
<el-button
v-permission="{key: 'fbfx_lmport', menuPath: '/project/progressManagementAg/divisionSubManage'}"
size="medium"
type="primary"
:disabled="!treeData.id"
@click="uploadShow = true"
>导入</el-button
>
v-permission="{ key: 'fbfx_lmport', menuPath: '/project/progressManagementAg/divisionSubManage' }"
size="medium" type="primary" :disabled="!treeData.id" @click="uploadShow = true">导入</el-button>
</el-form-item>
</el-form>
</div>
<div class="table_wrap whiteBlock">
<vue-scroll>
<el-table
height="650"
class="tables"
:data="listData"
lazy
row-key="id"
default-expand-all
:tree-props="{ children: 'children' }"
>
<el-table-column
width="200"
prop="taskName"
label="分部分项工程名称"
>
<el-table height="650" class="tables" :data="listData" lazy row-key="id" default-expand-all
:tree-props="{ children: 'children' }">
<el-table-column width="200" prop="taskName" label="分部分项工程名称">
<template slot-scope="scope">
<span
:title="scope.row.taskName"
style="overflow: hidden;white-space: nowrap;text-overflow: ellipsis;width: 150px;"
>
<span :title="scope.row.taskName"
style="overflow: hidden;white-space: nowrap;text-overflow: ellipsis;width: 150px;">
{{ scope.row.taskName }}
</span>
</template>
</el-table-column>
<el-table-column
align="center"
prop="qualityRegionName"
label="区域"
show-overflow-tooltip
>
<el-table-column align="center" prop="qualityRegionName" label="区域" show-overflow-tooltip>
</el-table-column>
<el-table-column
align="center"
prop="startDate"
label="计划开始时间"
>
<el-table-column align="center" prop="startDate" label="计划开始时间">
</el-table-column>
<el-table-column
align="center"
prop="finishDate"
label="计划完成时间"
>
<el-table-column align="center" prop="finishDate" label="计划完成时间">
</el-table-column>
<el-table-column
align="center"
prop="actualStartDate"
label="实际开始时间"
>
<el-table-column align="center" prop="actualStartDate" label="实际开始时间">
</el-table-column>
<el-table-column
align="center"
prop="actualFinishDate"
label="实际完成时间"
></el-table-column>
<el-table-column
align="center"
prop="dutyUserName"
label="负责人"
></el-table-column>
<el-table-column
align="center"
prop="progressRatio"
label="进度"
>
<el-table-column align="center" prop="actualFinishDate" label="实际完成时间"></el-table-column>
<el-table-column align="center" prop="dutyUserName" label="负责人"></el-table-column>
<el-table-column align="center" prop="progressRatio" label="进度">
<template slot-scope="scope">{{
scope.row.progressRatio + "%"
}}</template>
@ -242,35 +138,28 @@
<el-table-column prop="status" align="center" label="执行状态">
<template slot-scope="scope">
<span :class="scope.row.status == 0
? 'no-start':scope.row.status == 1
?'is-pending':scope.row.status == 2
?'is-finshed':'no-start'">
{{
scope.row.status == 0
? 'no-start' : scope.row.status == 1
? 'is-pending' : scope.row.status == 2
? 'is-finshed' : 'no-start'">
{{
scope.row.status == 0
? "未开始"
: scope.row.status == 1
? "进行中"
: scope.row.status == 2
? "已完成"
: "未开始"
}}
? "进行中"
: scope.row.status == 2
? "已完成"
: "未开始"
}}
</span>
</template>
</el-table-column>
<el-table-column
prop="beginWarning"
align="center"
label="开始预警"
>
<el-table-column prop="beginWarning" align="center" label="开始预警">
<template slot-scope="scope">
<div
style="color: #fe6565;"
v-if="scope.row.beginWarning === 3"
>
<div style="color: #fe6565;" v-if="scope.row.beginWarning === 3">
{{
scope.row.beginWarning == 1
? "提前"
: scope.row.beginWarning == 2
? "提前"
: scope.row.beginWarning == 2
? "正常"
: "逾期"
}}
@ -278,28 +167,21 @@
<div v-else>
{{
scope.row.beginWarning == 1
? "提前"
: scope.row.beginWarning == 2
? "提前"
: scope.row.beginWarning == 2
? "正常"
: "逾期"
}}
</div>
</template>
</el-table-column>
<el-table-column
prop="endWarning"
align="center"
label="结束预警"
>
<el-table-column prop="endWarning" align="center" label="结束预警">
<template slot-scope="scope">
<div
style="color: #fe6565;"
v-if="scope.row.endWarning === 3"
>
<div style="color: #fe6565;" v-if="scope.row.endWarning === 3">
{{
scope.row.endWarning == 1
? "提前"
: scope.row.endWarning == 2
? "提前"
: scope.row.endWarning == 2
? "正常"
: "逾期"
}}
@ -307,8 +189,8 @@
<div v-else>
{{
scope.row.endWarning == 1
? "提前"
: scope.row.endWarning == 2
? "提前"
: scope.row.endWarning == 2
? "正常"
: "逾期"
}}
@ -318,79 +200,43 @@
<el-table-column width="300" label="操作" align="center">
<template slot-scope="scope">
<el-button
v-permission="{key: 'fbfx_subltem', menuPath: '/project/progressManagementAg/divisionSubManage'}"
@click.native.stop="addBefore(2, scope.row)"
size="mini"
type="text"
icon="el-icon-circle-plus-outline"
>
v-permission="{ key: 'fbfx_subltem', menuPath: '/project/progressManagementAg/divisionSubManage' }"
@click.native.stop="addBefore(2, scope.row)" size="mini" type="text"
icon="el-icon-circle-plus-outline">
子分项
</el-button>
<el-button
v-permission="{key: 'fbfx_details', menuPath: '/project/progressManagementAg/divisionSubManage'}"
size="mini"
type="text"
icon="el-icon-document"
@click.native.stop="showDetail(scope.row)"
>
v-permission="{ key: 'fbfx_details', menuPath: '/project/progressManagementAg/divisionSubManage' }"
size="mini" type="text" icon="el-icon-document" @click.native.stop="showDetail(scope.row)">
详情
</el-button>
<el-button
v-permission="{key: 'fbfx_edit', menuPath: '/project/progressManagementAg/divisionSubManage'}"
size="mini"
type="text"
icon="el-icon-edit"
@click.native.stop="editBefore(scope.row)"
>
v-permission="{ key: 'fbfx_edit', menuPath: '/project/progressManagementAg/divisionSubManage' }"
size="mini" type="text" icon="el-icon-edit" @click.native.stop="editBefore(scope.row)">
编辑
</el-button>
<el-button
v-permission="{key: 'fbfx_delete', menuPath: '/project/progressManagementAg/divisionSubManage'}"
size="mini"
type="text"
class="delete-btn"
icon="el-icon-delete"
@click.native.stop="deleteBefore(scope.row)"
>删除</el-button
>
v-permission="{ key: 'fbfx_delete', menuPath: '/project/progressManagementAg/divisionSubManage' }"
size="mini" type="text" class="delete-btn" icon="el-icon-delete"
@click.native.stop="deleteBefore(scope.row)">删除</el-button>
</template>
</el-table-column>
</el-table>
</vue-scroll>
<el-pagination
class="pagerBox"
style="position: absolute; top: 85%; left: 51%"
@size-change="SizeChange"
@current-change="CurrentChange"
:current-page="pagInfo.pageNo"
:page-sizes="$store.state.PAGESIZRS"
:page-size="pagInfo.pageSize"
layout="total, sizes, prev, pager, next"
:total="Number(pagInfo.total)"
background
></el-pagination>
<el-pagination class="pagerBox" style="position: absolute; top: 85%; left: 51%" @size-change="SizeChange"
@current-change="CurrentChange" :current-page="pagInfo.pageNo" :page-sizes="$store.state.PAGESIZRS"
:page-size="pagInfo.pageSize" layout="total, sizes, prev, pager, next" :total="Number(pagInfo.total)"
background></el-pagination>
</div>
</div>
</div>
<!-- '新增父子级工程弹框' -->
<el-dialog
:modal-append-to-body="false"
:title="title"
:visible.sync="dialogVisible"
width="667px"
@close="close"
>
<el-dialog :modal-append-to-body="false" :title="title" :visible.sync="dialogVisible" width="667px" @close="close">
<div class="dialog_content">
<el-form
ref="addEditForm"
label-width="135px"
size="medium"
class="dialogFormBox"
:rules="addEditRules"
:model="workerInfo"
>
<el-form-item label="区域" prop="qualityRegionId">
<el-form ref="addEditForm" label-width="135px" size="medium" class="dialogFormBox" :rules="addEditRules"
:model="workerInfo">
<el-form-item label="区域" prop="qualityRegionId">
<!-- <el-select v-model="workerInfo.qualityRegionId" placeholder="请选择">
<el-option
v-for="item in areaList"
@ -400,182 +246,87 @@
>
</el-option>
</el-select> -->
<el-select
ref="selectFormRef"
v-model="selectFormVal"
placeholder="请选择"
style="width: 100%;"
size="medium"
clearable
@change="selectFormChange"
>
<el-select ref="selectFormRef" v-model="selectFormVal" placeholder="请选择" style="width: 100%;" size="medium"
clearable @change="selectFormChange">
<el-option style="height:auto" :value="[]">
<el-tree
:data="areaList"
node-key="id"
ref="groupFormTree"
:default-expanded-keys="defaultExpandFormArr"
:props="defaultAreaProps"
:highlight-current="true"
:default-expand-all="false"
@node-click="treeAreaFormClick"
>
<el-tree :data="areaList" node-key="id" ref="groupFormTree"
:default-expanded-keys="defaultExpandFormArr" :props="defaultAreaProps" :highlight-current="true"
:default-expand-all="false" @node-click="treeAreaFormClick">
</el-tree>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="承包商" prop="enterpriseName">
<el-select v-model="workerInfo.enterpriseName" placeholder="请选择" disabled>
<el-option
v-for="item in level1CompanyData"
:key="item.id"
:label="item.enterpriseName"
:value="item.id"
>
<el-option v-for="item in level1CompanyData" :key="item.id" :label="item.enterpriseName" :value="item.id">
</el-option>
</el-select>
</el-form-item>
<el-form-item
label="分部分项名称"
prop="taskName"
v-if="dialogType == 3"
>
<el-input
v-model="parentTaskName"
placeholder="请输入"
:disabled="dialogType == 3"
></el-input>
<el-form-item label="分部分项名称" prop="taskName" v-if="dialogType == 3">
<el-input v-model="parentTaskName" placeholder="请输入" :disabled="dialogType == 3"></el-input>
</el-form-item>
<el-form-item v-else label="分部分项名称" prop="taskName">
<el-input
v-model="workerInfo.taskName"
placeholder="请输入"
></el-input>
<el-input v-model="workerInfo.taskName" placeholder="请输入"></el-input>
</el-form-item>
<el-form-item
v-if="dialogType == 3"
label="子分部分项名称"
prop="taskName"
>
<el-input
v-model="workerInfo.taskName"
placeholder="请输入"
></el-input>
<el-form-item v-if="dialogType == 3" label="子分部分项名称" prop="taskName">
<el-input v-model="workerInfo.taskName" placeholder="请输入"></el-input>
</el-form-item>
<el-form-item label="计划开始时间" prop="startDate">
<el-date-picker
@change="time1"
v-model="workerInfo.startDate"
type="date"
placeholder="请选择日期"
value-format="yyyy-MM-dd"
>
<el-date-picker @change="time1" v-model="workerInfo.startDate" type="date" placeholder="请选择日期"
value-format="yyyy-MM-dd">
</el-date-picker>
</el-form-item>
<el-form-item label="计划结束时间" prop="finishDate">
<el-date-picker
@change="time2"
v-model="workerInfo.finishDate"
:picker-options="dateBefore"
type="date"
placeholder="请选择日期"
value-format="yyyy-MM-dd"
>
<el-date-picker @change="time2" v-model="workerInfo.finishDate" :picker-options="dateBefore" type="date"
placeholder="请选择日期" value-format="yyyy-MM-dd">
</el-date-picker>
</el-form-item>
<el-form-item label="实际开始时间" prop="actualStartDate">
<el-date-picker
v-model="workerInfo.actualStartDate"
type="date"
placeholder="请选择日期"
value-format="yyyy-MM-dd"
>
<el-date-picker v-model="workerInfo.actualStartDate" type="date" placeholder="请选择日期"
value-format="yyyy-MM-dd">
</el-date-picker>
</el-form-item>
<el-form-item label="实际结束时间" prop="actualFinishDate">
<el-date-picker
v-model="workerInfo.actualFinishDate"
:picker-options="actualDateBefore"
type="date"
placeholder="请选择日期"
value-format="yyyy-MM-dd"
>
<el-date-picker v-model="workerInfo.actualFinishDate" :picker-options="actualDateBefore" type="date"
placeholder="请选择日期" value-format="yyyy-MM-dd">
</el-date-picker>
</el-form-item>
<el-form-item label="负责人" prop="dutyUserName">
<el-select v-model="workerInfo.dutyUserId" placeholder="请选择" filterable>
<el-option
v-for="item in principalLsit"
:key="item.userId"
:label="item.realName"
:value="item.userId"
>
<el-option v-for="item in principalLsit" :key="item.userId" :label="item.realName" :value="item.userId">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="进度(%)" prop="progressRatio">
<el-input-number
:disabled="workerInfo.status === 2"
:max="100"
style="width: 105%"
v-model="workerInfo.progressRatio"
@input="validateInput"
></el-input-number>
<el-input-number :disabled="workerInfo.status === 2" :max="100" style="width: 105%"
v-model="workerInfo.progressRatio" @input="validateInput"></el-input-number>
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input
v-model="workerInfo.remark"
placeholder="请输入"
></el-input>
<el-input v-model="workerInfo.remark" placeholder="请输入"></el-input>
</el-form-item>
</el-form>
</div>
<div class="dialog-footer">
<el-button
class="cancleBtn"
@click="dialogVisible = false"
icon="el-icon-circle-close"
size="medium"
>取消
<el-button class="cancleBtn" @click="dialogVisible = false" icon="el-icon-circle-close" size="medium">取消
</el-button>
<el-button
type="primary"
icon="el-icon-circle-check"
@click="submitBtn"
size="medium"
>确定
<el-button type="primary" icon="el-icon-circle-check" @click="submitBtn" size="medium">确定
</el-button>
</div>
</el-dialog>
<!-- 导入弹框 -->
<el-dialog
:modal-append-to-body="false"
width="600px"
title="导入"
:visible.sync="uploadShow"
@close="close2"
>
<el-dialog :modal-append-to-body="false" width="600px" title="导入" :visible.sync="uploadShow" @close="close2">
<div class="questionText">
<i
style="color: #e1a439; margin-right: 1%"
class="el-icon-question"
></i
>用户需要先下载excel文件再将数据填写到Project文件中选择所需要的一种更新方式然后通过选择文件按钮上传Project文件点击确定即可完成分部分项数据更新
<i style="color: #e1a439; margin-right: 1%"
class="el-icon-question"></i>用户需要先下载excel文件再将数据填写到Project文件中选择所需要的一种更新方式然后通过选择文件按钮上传Project文件点击确定即可完成分部分项数据更新
</div>
<div class="dialogUplod">
<div style="margin-top: -15px">
现有数据excel下载
<el-button size="mini" type="primary" plain @click="downloadFn(2)"
>下载</el-button
>
<el-button size="mini" type="primary" plain @click="downloadFn(2)">下载</el-button>
</div>
<div style="margin-left: 64px">
<span style="position: absolute">更新方式</span>
<el-radio-group
style="margin-left: 65px"
v-model="radio"
@change="handleRadioChange"
>
<el-radio-group style="margin-left: 65px" v-model="radio" @change="handleRadioChange">
<el-radio :label="1">覆盖更新</el-radio>
<el-radio :label="2">根据名称替换更新</el-radio>
</el-radio-group>
@ -583,39 +334,19 @@
<div style="margin-left: 2px;margin-top: -15px;">
<span style="color: red;margin-right: 5px;">*</span>上传Project文件
<el-upload
accept=".mpp"
v-if="fileName == ''"
class="upload-demo expintBtn"
name="mppFile"
:on-success="handleImportSuccess"
:on-change="handleImportChange"
:before-upload="beforeUpload"
:file-list="fileList"
:action="$http.defaults.baseURL + 'xmgl/xzTaskProgress/importData'"
:data="{ projectSn: projectSn, type: radio }"
:show-file-list="false"
:headers="headers"
>
<el-upload accept=".mpp" v-if="fileName == ''" class="upload-demo expintBtn" name="mppFile"
:on-success="handleImportSuccess" :on-change="handleImportChange" :before-upload="beforeUpload"
:file-list="fileList" :action="$http.defaults.baseURL + 'xmgl/xzTaskProgress/importData'"
:data="{ projectSn: projectSn, type: radio }" :show-file-list="false" :headers="headers">
<el-button size="mini" type="primary" plain>选择</el-button>
</el-upload>
<span v-else style="color: #5181f6">{{ fileName }}</span>
</div>
</div>
<div class="dialog-footer">
<el-button
class="cancleBtn"
@click="uploadShow = false"
icon="el-icon-circle-close"
size="medium"
>取消
<el-button class="cancleBtn" @click="uploadShow = false" icon="el-icon-circle-close" size="medium">取消
</el-button>
<el-button
type="primary"
icon="el-icon-circle-check"
size="medium"
@click="handleUploadConfirm"
>确定
<el-button type="primary" icon="el-icon-circle-check" size="medium" @click="handleUploadConfirm">确定
</el-button>
</div>
</el-dialog>
@ -624,12 +355,7 @@
<img width="100%" :src="dialogImageUrl" alt="" />
</el-dialog>
</div>
<detailpage
v-if="type == 'detail'"
:id="seedId"
:rowData="rowData"
@closeDetail="closeDetailFn"
></detailpage>
<detailpage v-if="type == 'detail'" :id="seedId" :rowData="rowData" @closeDetail="closeDetailFn"></detailpage>
</div>
</template>
<script>
@ -647,7 +373,7 @@ export default {
components: {
detailpage,
},
mounted() {},
mounted() { },
data() {
return {
defaultExpandFormArr: [],
@ -849,7 +575,7 @@ export default {
this.getTreeList();
},
methods: {
selectFormChange(){
selectFormChange() {
if (!val) {
this.selectFormVal = "";
this.workerInfo.qualityRegionId = "";
@ -864,7 +590,7 @@ export default {
}
},
//
treeAreaFormClick(data){
treeAreaFormClick(data) {
if (data.status == 1) {
this.$message.warning("无法选中已禁用组织");
} else {
@ -1094,7 +820,7 @@ export default {
}
});
})
.catch(() => {});
.catch(() => { });
},
close() {
this.workerInfo = {};
@ -1278,21 +1004,27 @@ export default {
};
</script>
<style lang="less" scoped>
.table-content{
.table-content {
flex: 1;
}
.down {
text-decoration: none;
color: #fff;
}
.expintBtn {
display: inline-block !important;
margin-right: 10px;
}
.table_wrap {
height: calc(100% - 98px);
overflow: auto;
.no-start,.is-pending,.is-finshed{
.no-start,
.is-pending,
.is-finshed {
display: inline-block;
width: 65px;
height: 25px;
@ -1300,54 +1032,67 @@ export default {
border-radius: 4px;
text-align: center;
}
.no-start{
.no-start {
color: #959595;
border: 1px solid #959595;
}
.is-pending{
.is-pending {
color: #DAB387;
border: 1px solid #DAB387;
}
.is-finshed{
.is-finshed {
color: #1BA035;
border: 1px solid #1BA035;
}
}
.searchBox .el-form-item {
margin: 0 5px 0 0;
}
.delete-btn {
color: #fe6565;
}
.dialogUplod {
height: 100px;
margin-left: 70px;
margin-top: 40px;
div {
margin-bottom: 20px;
}
}
.treeStyle() {
/deep/.el-tree {
font-size: 15px;
width: 100%;
background-color: transparent;
.el-tree-node {
white-space: normal;
&:focus > .el-tree-node__content {
&:focus>.el-tree-node__content {
background-color: transparent;
}
&.is-current > .el-tree-node__content {
&.is-current>.el-tree-node__content {
background-color: rgba(81, 129, 246, 0.14);
color: #5181f6;
}
}
.el-tree-node__content {
// height: 32px;
padding: 7px 0;
height: auto;
line-height: 16px;
position: relative;
// margin-bottom: 7px;
&:hover {
background-color: rgba(81, 129, 246, 0.14);
@ -1357,11 +1102,13 @@ export default {
.videoName {
font-size: 14px;
}
.projectName {
font-size: 14px;
width: calc(100% - 55px);
display: inline-block;
}
.companyName2 {
font-size: 16px;
font-weight: bold;
@ -1372,28 +1119,34 @@ export default {
white-space: nowrap;
}
}
.el-tree-node__expand-icon {
font-size: 16px;
padding: 0 6px;
&.is-leaf {
color: transparent !important;
}
}
.treeTitle {
background-color: #f7f7f7;
margin-bottom: 10px;
}
}
}
.content-box {
width: 100%;
height: 100%;
display: flex;
.areaTreeBox {
display: flex;
position: relative;
.treeStyle();
}
.areaTreeInner {
// background-color: rgba(0, 0, 0, 0.7);
width: 300px;
@ -1402,6 +1155,7 @@ export default {
height: calc(100% - 40px);
display: flex;
flex-direction: column;
.treeBox {
height: 87%;
background-color: rgba(216, 216, 216, 0.2);
@ -1410,8 +1164,11 @@ export default {
}
}
}
//
/deep/.el-select-dropdown__item.hover,.el-select-dropdown__item.hover, .el-select-dropdown__item:hover{
/deep/.el-select-dropdown__item.hover,
.el-select-dropdown__item.hover,
.el-select-dropdown__item:hover {
background-color: transparent;
}
</style>

View File

@ -109,9 +109,10 @@
type="primary"
size="medium"
@click="updateProgressFn(1)"
:disabled="![5, 10].includes($store.state.userInfo.accountType)"
>更新项目总进度</el-button
>
<!-- :disabled="![5, 10].includes($store.state.userInfo.accountType)" -->
<el-button
v-permission="{
key: 'get_updateContractor Progress',

View File

@ -263,7 +263,7 @@
</div>
</div>
<div class="back_info margin" v-if="item.auditType == 3">驳回原因</div>
<div class="feedbackContent">{{ item.rejectReason }}</div>
<div class="feedbackContent" v-if="item.auditType == 3">{{ item.rejectReason }}</div>
</div>
<!-- <div class="whiteBlock plan_mater">
<div class="flex3 back_info">材料用量</div>
@ -335,9 +335,10 @@
list-type="picture-card"
multiple
name="files"
:limit="5"
accept=".png, .jpg, .jpeg"
:file-list="palnFileList"
:before-upload="beforeUpload"
:on-success="(res, file) => handleSuccess(res, file)"
:on-remove="(file, fileList) => handleRemove(file, fileList)"
>
@ -501,6 +502,14 @@ export default {
},
},
methods: {
beforeUpload(){
if(this.palnFileList.length <= 4) {
return true
}
this.$message.warning("图片已经达到最大上传限制!");
return false
},
//
getBackBtn() {
this.$emit("closeDetail", false);

View File

@ -86,10 +86,15 @@
<el-button
type="primary"
size="medium"
v-permission="{
key: 'xmzjd_xmzjd',
menuPath: '/project/progressManagementAg/projectganttChart',
}"
@click="updateProgressFn(1)"
:disabled="![5, 10].includes($store.state.userInfo.accountType)"
>更新项目总进度</el-button
>
<!-- :disabled="![5, 10].includes($store.state.userInfo.accountType)" -->
<!-- <el-button type="primary" size="medium" @click="updateProgressFn(2)"
>更新承包商进度</el-button
> -->