254 lines
5.6 KiB
Vue
Raw Normal View History

2024-04-20 17:26:03 +08:00
<template>
<div class="leftTop">
2024-04-21 14:15:04 +08:00
<div class="header">
2024-05-11 02:49:17 +08:00
<div class="hLeft">项目基本信息</div>
<!-- <div class="hRight">
2024-04-27 22:50:10 +08:00
<el-date-picker
style="width: 85%"
v-model="dateRange"
type="daterange"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
/>
2024-05-11 02:49:17 +08:00
</div> -->
2024-04-21 14:15:04 +08:00
</div>
2024-04-22 23:02:06 +08:00
<div class="content">
2024-05-10 20:33:26 +08:00
<div class="content-info">
<span>项目名称</span>
2024-05-11 02:49:17 +08:00
<span>{{ projectData.projectName || "" }}</span>
2024-04-22 23:02:06 +08:00
</div>
2024-05-10 20:33:26 +08:00
<div class="content-info">
<span>项目地址</span>
2024-05-11 02:49:17 +08:00
<span>{{addressData()}}</span>
2024-04-22 23:02:06 +08:00
</div>
2024-05-10 20:33:26 +08:00
<div class="content-info">
<span>项目经理</span>
2024-05-11 02:49:17 +08:00
<span>{{ projectData.projectManage || "" }}</span>
2024-05-10 20:33:26 +08:00
</div>
<div class="content-info">
<span>联系电话</span>
2024-05-11 02:49:17 +08:00
<span>{{ projectData.projectTel || "" }}</span>
2024-05-10 20:33:26 +08:00
</div>
<div class="content-info">
<span>建筑面积</span>
2024-05-11 02:49:17 +08:00
<span>{{ projectData.projectAcreage || "" }} </span>
2024-05-10 20:33:26 +08:00
</div>
<div class="content-info">
<span>开工日期</span>
2024-05-11 02:49:17 +08:00
<span>{{ projectData.startWorkDate || "" }}</span>
2024-05-10 20:33:26 +08:00
</div>
<div class="content-info">
<span>项目编号</span>
2024-05-11 02:49:17 +08:00
<span>{{ projectData.projectNumber || "" }}</span>
2024-04-27 22:50:10 +08:00
</div>
2024-05-10 20:33:26 +08:00
<div class="content-info">
<span>工程类别</span>
2024-05-11 02:49:17 +08:00
<span>{{ projectData.projectType && projectTypeEnumList.length > 0 ? projectTypeEnumList[projectData.projectType - 1].name : "" }}</span>
2024-04-27 22:50:10 +08:00
</div>
</div>
2024-04-20 17:26:03 +08:00
</div>
</template>
<script setup lang="ts">
import { ref, onMounted, watch } from "vue";
2024-05-11 02:49:17 +08:00
import { getProjectDetail, getStageOption } from "@/api/modules/projectOverview";
import { GlobalStore } from "@/stores";
const store = GlobalStore();
const projectData = ref({} as any);
const projectTypeEnumList:any = ref([]); //工程类别
const addressData = () => {
return projectData.value.provinceName +
projectData.value.cityName +
projectData.value.areaName +
projectData.value.projectAddress;
}
// 工程类别字典数据
const projectTypeEnum = async () => {
const res: any = await getStageOption({ dictionaryEncoding: "project_type", projectSn: store.sn });
if (res.result.length > 0) {
let newArray = res.result.map((item: any) => {
return {
name: item.name,
id: Number(item.data)
};
});
projectTypeEnumList.value = newArray
} else {
projectTypeEnumList.value = []
}
};
//获取项目信息
const getProjectInfo = async () => {
const res = await getProjectDetail({ projectSn: store.sn });
console.log("获取项目信息666", res);
// console.log("获取工程类别", projectTypeEnum);
projectData.value = res.result;
};
onMounted(async () => {
getProjectInfo();
projectTypeEnum();
});
2024-04-20 17:26:03 +08:00
</script>
<style lang="scss" scoped>
.leftTop {
2024-04-21 14:15:04 +08:00
background: url("@/assets/images/commandScreen/card-left-top.png") no-repeat;
// background-color: #fff;
background-size: 100% 100%;
2024-04-20 17:26:03 +08:00
width: 100%;
2024-04-27 22:50:10 +08:00
height: 35%;
.header {
2024-04-21 14:15:04 +08:00
// width: 100%;
// height: 100%;
display: flex;
// align-items: center;
justify-content: space-between;
padding: 20px 20px;
2024-04-22 23:02:06 +08:00
border-bottom: 1px solid #0059ff;
2024-04-27 22:50:10 +08:00
.hLeft {
2024-04-21 14:15:04 +08:00
width: 50%;
2024-05-11 11:07:32 +08:00
// color: white;
font-size: 20px;
font-weight: bold;
background-image: linear-gradient(to bottom left, #c8E3FF, #007AFF);
-webkit-background-clip: text;
background-clip: text;
color: transparent;
2024-04-21 14:15:04 +08:00
}
2024-04-27 22:50:10 +08:00
.hRight {
2024-04-21 14:15:04 +08:00
width: 50%;
2024-04-20 17:26:03 +08:00
}
}
2024-04-27 22:50:10 +08:00
.content {
2024-05-10 20:33:26 +08:00
display: flex;
flex-direction: column;
margin-top: 10px;
margin-left: 20px;
&-info:not(:first-child){
2024-05-11 11:07:32 +08:00
margin-top: 11px;
2024-04-22 23:02:06 +08:00
}
2024-05-10 20:33:26 +08:00
&-info{
2024-04-22 23:02:06 +08:00
display: flex;
2024-05-10 20:33:26 +08:00
align-items: center;
color: white;
2024-04-22 23:02:06 +08:00
font-size: 14px;
2024-05-10 20:33:26 +08:00
span:nth-child(2){
display: inline-block;
width: 80%;
2024-04-22 23:02:06 +08:00
white-space: nowrap;
text-overflow: ellipsis;
2024-05-10 20:33:26 +08:00
overflow: hidden;
2024-04-22 23:02:06 +08:00
}
}
}
2024-04-20 17:26:03 +08:00
}
2024-04-27 09:47:16 +08:00
::v-deep .el-input__inner {
color: #fff;
}
::v-deep .el-select .el-input .el-select__caret {
color: #fff;
}
::v-deep .el-input__wrapper {
width: 85%;
height: 0%;
background: #0d2956;
}
::v-deep .el-range-separator {
color: #ccc;
font-size: 10px;
}
::v-deep .el-range-input {
color: #ccc;
font-size: 10px;
}
2024-04-27 22:50:10 +08:00
.dialogContainer {
padding: 0 50px;
2024-04-28 01:15:21 +08:00
// height: 600px;
2024-04-27 22:50:10 +08:00
::v-deep .el-tabs__item {
color: #fff;
}
::v-deep .el-tabs__nav-wrap::after {
background-color: rgba(255, 0, 0, 0);
}
.tabList {
display: flex;
width: 100%;
height: 14%;
background: url("@/assets/images/dustNoise/rightBottom.png") no-repeat;
// background-color: #00224f;
background-size: 100% 100%;
left: 75.5%;
top: 75%;
color: #fff;
font-size: 14px;
line-height: 30px;
justify-content: space-around;
text-align: center;
div {
width: 100px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
}
.listBox {
// height: 10%;
.listStyle {
display: flex;
justify-content: space-around;
color: #fff;
height: 12%;
line-height: 25px;
font-size: 12px;
text-align: center;
div {
width: 100px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
}
.listStyle:hover {
background: #003c84;
}
}
.notoDta {
top: 40%;
width: 30%;
left: 35%;
text-align: center;
position: absolute;
img {
width: 40%;
margin: 5% 30%;
}
p {
color: #fff;
font-size: 14px;
margin: -6% 37%;
}
}
}
::v-deep .el-dialog{
background: url("@/assets/images/commandScreen/dialog-bg.png") no-repeat;
// background-color: #fff;
background-size: 100% 100%;
2024-04-28 01:15:21 +08:00
margin-top: 12%;
2024-04-27 22:50:10 +08:00
}
::v-deep .el-dialog__headerbtn{
2024-04-28 01:15:21 +08:00
right: 35px;
top: 25px;
2024-04-27 22:50:10 +08:00
}
::v-deep .el-dialog .el-dialog__header .el-dialog__title{
2024-04-28 01:15:21 +08:00
margin-left: 30px;
margin-top: 10px;
2024-04-27 22:50:10 +08:00
font-size: 18px;
color: #fff;
2024-04-28 01:15:21 +08:00
position: absolute;
}
::v-deep el-dialog__header{
margin-top: 20px;
2024-04-27 22:50:10 +08:00
}
2024-04-20 17:26:03 +08:00
</style>