This commit is contained in:
chengdandan 2023-03-24 17:09:54 +08:00
commit dc2fb8cc7e
34 changed files with 1241 additions and 1236 deletions

View File

@ -88,64 +88,3 @@ export const getCompleteMonthStatus = (params) => {
{params}, {params},
) )
}; };
export function filterCompanyAPI (params) {
return request({
url: '/rcm/company-credit/filterCompany',
method: 'post',
data: params
})
}
export function normalScanAPI (params) {
return request({
url: '/rcm/company-credit/report',
method: 'post',
data: params
})
}
export function deepScanAPI (params) {
return request({
url: '/rcm/company-credit/deepAuthUrl',
method: 'post',
data: params
})
}
export function reportDetailAPI (params) {
return request({
url: `/rcm/company-credit/detail?requestId=${params.id}`,
method: 'get',
data: params,
headers: {
'Content-Type': 'application/json;charset=UTF-8'
}
})
}
export function deepReportAPI (params) {
return request({
url: `/rcm/company-credit/deep-report`,
method: 'post',
data: params,
headers: {
'Content-Type': 'application/json;charset=UTF-8'
}
})
}
export function taxInfoAPI (params) {
return request({
url: `/rcm/company-credit/taxInfo`,
method: 'post',
data: params
})
}
export function saveScoreAPI (params) {
return request({
url: `/rcm/company-credit/updateScore`,
method: 'post',
data: params
})
}

View File

@ -26,4 +26,16 @@ export const getUserGroup = (params) => {
{params}, {params},
) )
}; };
//施工人员组成
export const getGroupCensus = (params) => {
return axios.get('api/ems-third-party-service/user/groupCensus',
{params},
)
};
//考勤监控
export const getAttend = (params) => {
return axios.get('api/ems-third-party-service/user/attend',
{params},
)
};

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

BIN
src/assets/weather/gale.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

BIN
src/assets/weather/hail.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

BIN
src/assets/weather/moon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

BIN
src/assets/weather/rain.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

BIN
src/assets/weather/sand.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

BIN
src/assets/weather/smog.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

BIN
src/assets/weather/snow.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 621 B

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

@ -1,7 +1,7 @@
<template> <template>
<div style="width:100%;height:100%;"> <div style="width:100%;height:100%;">
<div ref="chart" style="width:100%;height:100%;"></div> <div ref="chart" style="width:100%;height:100%;"></div>
<div class="boxPeople aa"> <!-- <div class="boxPeople aa">
<div class="name" style="color: #fcecb8;">架子工</div> <div class="name" style="color: #fcecb8;">架子工</div>
<div class="nucm" style="color: #eadfb4;">33<span <div class="nucm" style="color: #eadfb4;">33<span
style=" font-size: 18px; font-weight: 400;color: #fcecb8;">%</span></div> style=" font-size: 18px; font-weight: 400;color: #fcecb8;">%</span></div>
@ -20,7 +20,7 @@
<div class="name" style="color: #53E3FF">项目监理组</div> <div class="name" style="color: #53E3FF">项目监理组</div>
<div class="nucm" style="color: #d9def4;">40<span style=" font-size: 18px; font-weight: 400;color:#d9def4">%</span> <div class="nucm" style="color: #d9def4;">40<span style=" font-size: 18px; font-weight: 400;color:#d9def4">%</span>
</div> </div>
</div> </div> -->
</div> </div>
</template> </template>
<script> <script>
@ -39,7 +39,10 @@ export default {
return ['#00A572', '#007EC1', '#DA9300', '#878787'] return ['#00A572', '#007EC1', '#DA9300', '#878787']
} }
}, },
constructionPersonnel:{
type: Array,
default:null
}
}, },
components: { components: {
@ -49,61 +52,30 @@ export default {
return {} return {}
}, },
mounted() { mounted() {
this.initCharts(window.innerHeight)
}, },
watch: { watch: {
// Echarts // // Echarts
chartData: { // chartData: {
// deep: true,
// handler() {
// this.resetOption()
// }
// },
constructionPersonnel:{
deep: true, deep: true,
handler() { handler(newVal) {
this.resetOption() this.initCharts(newVal)
} }
} }
}, },
methods: { methods: {
initCharts() { initCharts(dataList) {
let myChart = this.$echarts.init(this.$refs.chart) let myChart = this.$echarts.init(this.$refs.chart)
var val1data2 = [{ var val1data2 = []
value: 33, val1data2 = Object.keys(dataList).map((item,index)=>{
name: '电工', return {name:dataList[item].post,value:dataList[item].percent}
itemStyle: { // })
normal: {
borderWidth: 2,
borderColor: '#52FFC1'
}
},
},
{
value: 13,
name: '项目监理组',
itemStyle: { //
normal: {
borderWidth: 2,
borderColor: '#B6F9FF'
}
},
},
{
value: 14,
name: '土建专工',
itemStyle: { //
normal: {
borderWidth: 2,
borderColor: '#DCD6FF'
}
},
},
{
value: 43,
name: '架子工',
itemStyle: { //
normal: {
borderWidth: 2,
borderColor: '#FFF6DA'
}
},
}
]
var arr = ['middleLost', 0.6, val1data2, '今日完成进度'] var arr = ['middleLost', 0.6, val1data2, '今日完成进度']
// //
myChart.setOption({ myChart.setOption({
@ -116,30 +88,37 @@ export default {
height:120 height:120
}, },
left: '162',// left: '162',//
top: '109' // top: '104' //
}] }]
}, },
series: [ series: [
// ['48%', '60%'] // ['48%', '60%']
{ {
type: 'pie', type: 'pie',
radius: this.picIsShow ? ['51%', '63%'] : ['60%', '60%'], radius: this.picIsShow ? ['48%', '60%'] : ['57%', '57%'],
center: ['50%', '170'], center: ['50%', '55%'],
color: this.colorList, color: this.colorList,
hoverAnimation: true, /// / hoverAnimation: true, /// /
label: { label: {
show: false, show: true,
formatter: '{b}{c}%', formatter: '{b}{c}%',
padding:[0,10,0,50],
itemStyle: { //
normal: {
borderWidth: 2,
borderColor: '#52FFC1'
}
},
rich: { rich: {
d: { d: {
color: '#fff', color: '#fff',
fontSize: 16, fontSize: 20,
lineHeight: 24, lineHeight: 24,
height: 24 height: 24
}, },
c: { c: {
color: "red", color: "red",
fontSize: 14, fontSize: 20,
lineHeight: 20, lineHeight: 20,
align: 'left', align: 'left',
} }

View File

@ -5,7 +5,7 @@
<span>{{totalPer}}</span> <span>{{totalPer}}</span>
<span></span> <span></span>
</div> </div>
<div ref="chart" style="width:100%;height:100%;"></div> <div ref="chart" style="width:100%;height:100%;position: relative;left: 53%;"></div>
<div class="jsBox"> <div class="jsBox">
<div class="bogJs" v-for="(item, i) in pieData" :key="i"> <div class="bogJs" v-for="(item, i) in pieData" :key="i">
<div class="jsChild"> <div class="jsChild">
@ -232,7 +232,8 @@ export default {
.allTotle { .allTotle {
position: absolute; position: absolute;
bottom: 69px; bottom: 69px;
left: 60px; left: 87%;
width: 50%;
div { div {
font-size: 14px; font-size: 14px;
font-weight: 500; font-weight: 500;

View File

@ -1,7 +1,7 @@
<template> <template>
<div class="hotelApply wl-gantt"> <div class="hotelApply wl-gantt">
<el-table <el-table
height="520" height="600"
:data="tableData" :data="tableData"
class="tableListValue" class="tableListValue"
:row-class-name="tableRowClassName" :row-class-name="tableRowClassName"
@ -12,26 +12,29 @@
:cell-style="cellStyle" :cell-style="cellStyle"
> >
<el-table-column <el-table-column
prop="room" prop="name"
label="任务名称" label="任务名称"
align="center" align="center"
width="140px" width="140px"
fixed
:show-overflow-tooltip="true" :show-overflow-tooltip="true"
> >
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="beginTime" prop="startDate"
label="开始时间" label="开始时间"
align="center" align="center"
width="120px" width="120px"
fixed
:show-overflow-tooltip="true" :show-overflow-tooltip="true"
> >
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="endTime" prop="endDate"
label="结束时间" label="结束时间"
align="center" align="center"
width="120px" width="120px"
fixed
:show-overflow-tooltip="true" :show-overflow-tooltip="true"
> >
</el-table-column> </el-table-column>
@ -75,94 +78,75 @@ import quarterOfYear from "dayjs/plugin/quarterOfYear";
dayjs.extend(quarterOfYear); // dayjs.extend(quarterOfYear); //
dayjs.extend(isBetween); dayjs.extend(isBetween);
export default { export default {
props: {
tableData: {
type: Array,
default: () => {
return []
}
}
},
name: "", name: "",
data() { data() {
return { return {
tableData: [ tableData: [
{
id: 1,
room: "公寓101",
bedName: "1号床",
beginTime: "2021-08-03",
endTime: "2021-08-04",
},
{
id: 2,
room: "公寓101",
bedName: "2号床",
beginTime: "2021-08-04",
endTime: "2021-08-5",
liveList: []
},
{
id: 3,
room: "公寓102",
bedName: "1号床",
beginTime: "2021-08-05",
endTime: "2021-08-7",
liveList: []
},
{
id: 4,
room: "公寓102",
bedName: "2号床",
beginTime: "2021-08-01",
endTime: "2021-08-3",
liveList: []
},
{
id: 5,
room: "公寓103",
bedName: "1号床",
beginTime: "2021-08-06",
endTime: "2021-08-8",
liveList: []
},
{
id: 6,
room: "公寓103",
bedName: "2号床",
beginTime: "2021-08-7",
endTime: "2021-08-9",
liveList: []
},
// { // {
// id: 7, // id: 1,
// room: "103", // name: "101",
// bedName: "2", // bedName: "1",
// beginTime: "2021-08-7", // startDate: "2021-08-03",
// endTime: "2021-08-9", // endDate: "2021-08-04",
// liveList: [] // liveList: []
// }, // },
// { // {
// id: 8, // id: 2,
// room: "103", // name: "101",
// bedName: "2", // bedName: "2",
// beginTime: "2021-08-7", // startDate: "2021-08-04",
// endTime: "2021-08-9", // endDate: "2021-08-5",
// liveList: [] // liveList: []
// }, { // },
// id:9, // {
// room: "103", // id: 3,
// bedName: "2", // name: "102",
// beginTime: "2021-08-7", // bedName: "1",
// endTime: "2021-08-9", // startDate: "2021-08-05",
// endDate: "2021-08-7",
// liveList: [] // liveList: []
// }, { // },
// id: 17, // {
// room: "103", // id: 4,
// name: "102",
// bedName: "2", // bedName: "2",
// beginTime: "2021-08-7", // startDate: "2021-08-01",
// endTime: "2021-08-9", // endDate: "2021-08-3",
// liveList: []
// },
// {
// id: 5,
// name: "103",
// bedName: "1",
// startDate: "2021-08-06",
// endDate: "2021-08-8",
// liveList: []
// },
// {
// id: 6,
// name: "103",
// bedName: "2",
// startDate: "2021-08-7",
// endDate: "2021-08-9",
// liveList: [] // liveList: []
// }, // },
], ],
showDrawer: false, // showDrawer: false, //
drawerForm: {}, drawerForm: {},
// //
self_start_date: "2021-08-01", // // self_start_date: "2021-08-01", //
self_end_date: "2021-08-30", // // self_end_date: "2021-08-30", //
self_start_date_day: "", // self_start_date: "2023-01-01", //
self_end_date: "2023-12-30", //
self_start_date_day: "2023-01-01", //
self_start_date_month: "", // self_start_date_month: "", //
self_start_date_year: "", // self_start_date_year: "", //
self_date_type: "monthAndDay" // self_date_type: "monthAndDay" //
@ -203,8 +187,8 @@ export default {
name: "name", // name: "name", //
id: "id", // id id: "id", // id
pid: "pid", // pid pid: "pid", // pid
startDate: "beginTime", // startDate: "startDate", //
endDate: "endTime", // endDate: "endDate", //
realStartDate: "recordBeginTime", // realStartDate: "recordBeginTime", //
realEndDate: "recordEndTime", // realEndDate: "recordEndTime", //
identityId: "identityId", identityId: "identityId",
@ -400,16 +384,17 @@ export default {
} }
return months; return months;
} }
for (let i = start_num; i < end_num; i++) { // for (let i = start_num; i < end_num; i++) {
// // //
months.push({ // months.push({
name: `${i}`, // name: `${i}`,
date: i, // date: i,
full_date: `${year}-${i}`, // full_date: `${year}-${i}`,
id: uuidv4() // id: uuidv4()
});
} // });
return months; // }
// return months;
}, },
/** /**
* 生成日期函数 * 生成日期函数
@ -421,48 +406,55 @@ export default {
generationDays(year, month, isLeap = false, week = false) { generationDays(year, month, isLeap = false, week = false) {
let big_month = [1, 3, 5, 7, 8, 10, 12].includes(month); let big_month = [1, 3, 5, 7, 8, 10, 12].includes(month);
let small_month = [4, 6, 9, 11].includes(month); let small_month = [4, 6, 9, 11].includes(month);
let dates_num = big_month ? 32 : small_month ? 31 : isLeap ? 30 : 29; // let dates_num = big_month ? 32 : small_month ? 31 : isLeap ? 30 : 29;
// let days = [];
// if (week) {
// let _day = 1; //
// let _start_day_inweek = this.timeInWeek(`${year}-${month}-1`);
// if (_start_day_inweek !== 0) {
// _day = 8 - _start_day_inweek;
// }
// for (let i = _day; i < dates_num; i += 7) {
// days.push({
// date: i,
// name: `${month}${i}`,
// id: uuidv4(),
// full_date: `${year}-${month}-${i}`
// });
// }
// } else {
// //
// if (
// year == this.self_start_date_year &&
// month == this.self_start_date_month
// ) {
// for (let i = this.self_start_date_day; i < dates_num; i++) {
// days.push({
// date: i,
// name: `${month}${i}`,
// id: uuidv4(),
// full_date: `${year}-${month}-${i}`
// });
// }
// //
// } else {
// for (let i = 1; i < dates_num; i++) {
// days.push({
// date: i,
// name: `${month}${i}`,
// id: uuidv4(),
// full_date: `${year}-${month}-${i}`
// });
// }
// }
// }
let days = []; let days = [];
if (week) {
let _day = 1; //
let _start_day_inweek = this.timeInWeek(`${year}-${month}-1`);
if (_start_day_inweek !== 0) {
_day = 8 - _start_day_inweek;
}
for (let i = _day; i < dates_num; i += 7) {
days.push({ days.push({
date: i, date: month,
name: `${i}`, name: `${month}`,
id: uuidv4(), id: uuidv4(),
full_date: `${year}-${month}-${i}` full_date: `${year}-${month}`
}); });
}
} else {
//
if (
year == this.self_start_date_year &&
month == this.self_start_date_month
) {
for (let i = this.self_start_date_day; i < dates_num; i++) {
days.push({
date: i,
name: `${i}`,
id: uuidv4(),
full_date: `${year}-${month}-${i}`
});
}
//
} else {
for (let i = 1; i < dates_num; i++) {
days.push({
date: i,
name: `${i}`,
id: uuidv4(),
full_date: `${year}-${month}-${i}`
});
}
}
}
return days; return days;
}, },
/** /**
@ -780,7 +772,7 @@ $gantt_item_half: 4px;
} }
.tableListValue{ .tableListValue{
width: 19vw; width: 19vw;
margin-left: 0.8vh; // margin-left: 0.8vh;
// //
::-webkit-scrollbar { ::-webkit-scrollbar {
width: 1.1vh; width: 1.1vh;
@ -797,7 +789,9 @@ $gantt_item_half: 4px;
} }
} }
.el-table__body tr.hover-row.current-row>td.el-table__cell, .el-table__body tr.hover-row.el-table__row--striped.current-row>td.el-table__cell, .el-table__body tr.hover-row.el-table__row--striped>td.el-table__cell, .el-table__body tr.hover-row>td.el-table__cell {
background-color: #2f807d!important;
}
.el-table { .el-table {
&.el-table--scrollable-y ::-webkit-scrollbar { &.el-table--scrollable-y ::-webkit-scrollbar {
display: none !important; // display: none !important; //

View File

@ -17,7 +17,7 @@
</div> </div>
<div class="titRight"> <div class="titRight">
<span>{{dateNew}}&nbsp;{{getWeek}}&nbsp;{{time}}</span> <span>{{dateNew}}&nbsp;{{getWeek}}&nbsp;{{time}}</span>
<span></span> <span><img :src='weatherImg' alt="" style="width:100%;height:100%"></span>
<span>&nbsp;&nbsp;天气&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span> <span>&nbsp;&nbsp;天气&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>
<span>{{weatherItem.weather}} &nbsp;{{weatherItem.temperature}}</span> <span>{{weatherItem.weather}} &nbsp;{{weatherItem.temperature}}</span>
</div> </div>
@ -111,6 +111,7 @@ export default {
}, },
data() { data() {
return { return {
weatherImg:require("@/assets/pic/sun.png"),
// //
indexShow:true, indexShow:true,
// //
@ -403,8 +404,14 @@ export default {
}).then(res => { }).then(res => {
console.log(res.data,'======================='); console.log(res.data,'=======================');
this.weatherItem = res.data.lives[0]; this.weatherItem = res.data.lives[0];
this.weatherImg = changeWeatherImg(res.data.lives[0].weather)
}); });
}, },
changeWeatherImg(weather){
if(weather=='雾'){
return require("@/assets/weather/sun.png")
}
},
changeMessage(val) { changeMessage(val) {
this.tienum = val this.tienum = val
}, },

View File

@ -92,12 +92,18 @@
{{ item.c4 }} {{ item.c4 }}
</div> </div>
</div> </div>
<div class="lineBox"> <div class="lineBox" :style="'width:' + jinduList * 20 + '%;'">
<!-- <el-progress :text-inside="true" status="success" :stroke-width="9" :percentage="70" style="z-index:10"></el-progress> --> <el-progress
:text-inside="true"
status="success"
:show-text="false"
:stroke-width="9"
:percentage="progress"
style="z-index: 10"
></el-progress>
</div> </div>
</div> </div>
</el-scrollbar> </el-scrollbar>
</div> </div>
<!-- 左侧模块1 --> <!-- 左侧模块1 -->
@ -357,6 +363,8 @@ export default {
}, },
data() { data() {
return { return {
jinduList:0, //
progress:0, //
securityCheck: [], // securityCheck: [], //
introduction: "", // introduction: "", //
projectId: "", //Id projectId: "", //Id
@ -671,6 +679,18 @@ export default {
getProjectStatus({ getProjectStatus({
projectId: this.projectId, projectId: this.projectId,
}).then((res) => { }).then((res) => {
this.jinduList = res.data.data.length
for(var i = 0; i < res.data.data.length; i++){
if (res.data.data[i].completionStatusValue == '正常完成') {
if (i==0) {
this.progress = (i + 1) * 5
}else if (i+1 >= this.jinduList) {
this.progress = 95
}else{
this.progress = (i + 1) * 12.5
}
}
}
this.boxList = Object.keys(res.data.data).map((item, index) => { this.boxList = Object.keys(res.data.data).map((item, index) => {
if (res.data.data[item].planEndTime != null) { if (res.data.data[item].planEndTime != null) {
res.data.data[item].planEndTime = res.data.data[ res.data.data[item].planEndTime = res.data.data[
@ -948,27 +968,28 @@ export default {
height: 100%; height: 100%;
// display: flex; // display: flex;
z-index: 999; z-index: 999;
position: relative;
display: -webkit-box; display: -webkit-box;
::-webkit-scrollbar { ::-webkit-scrollbar {
display: none; display: none;
} }
} }
.lineBox { .lineBox {
width: 810px; // width: 100%;
height: 9px; height: 9px;
// background: #ffffff; // background: #ffffff;
// border-radius: 5px; // border-radius: 5px;
// opacity: 0.5; // opacity: 0.5;
position: absolute; position: absolute;
top: 80px; top: 80px;
left: 20px; // left: 20px;
z-index: 10 !important; z-index: 10 !important;
} }
.boxChild { .boxChild {
// margin-left: 70px; // margin-left: 70px;
text-align: center; text-align: center;
width: 140px !important; width: 20% !important;
height: 100%; height: 100%;
z-index: 999 !important; z-index: 999 !important;
// display: inline; // display: inline;
@ -1693,10 +1714,10 @@ export default {
/* element滚动条组件 隐藏水平滚动条 */ /* element滚动条组件 隐藏水平滚动条 */
/deep/.el-scrollbar__thumb { /deep/.el-scrollbar__thumb {
// //
background: greenyellow;//, background: rgb(55,142,136); //,
} }
/deep/ .el-scrollbar__wrap { /deep/ .el-scrollbar__wrap {
margin-bottom:10px !important margin-bottom: 10px !important;
} }
</style> </style>
<style> <style>

View File

@ -1,8 +1,15 @@
<template> <template>
<div> <div>
<div @click="disBox" class="screenBox" <div
:style="{ 'background-image': !boxNone ? `url(${require(`../assets/pic/exitFull.png`)}` : `url(${require(`../assets/pic/fullScreen.png`)}` ,right: boxNone ? '483px' : '10px'}"> @click="disBox"
</div> class="screenBox"
:style="{
'background-image': !boxNone
? `url(${require(`../assets/pic/exitFull.png`)}`
: `url(${require(`../assets/pic/fullScreen.png`)}`,
right: boxNone ? '483px' : '10px',
}"
></div>
<!-- 左侧模块1 --> <!-- 左侧模块1 -->
<div class="leftOneBox" :style="{ left: boxNone ? '27px' : '-443px' }"> <div class="leftOneBox" :style="{ left: boxNone ? '27px' : '-443px' }">
<div class="titName"> <div class="titName">
@ -11,7 +18,7 @@
<span></span> <span></span>
</div> </div>
<div class="concet"> <div class="concet">
<pieDateChart style="width: 100%; height: 100%" :pieData='pieData'/> <pieDateChart style="width: 100%; height: 100%" :pieData="pieData" />
</div> </div>
</div> </div>
<!-- 左侧模块2 --> <!-- 左侧模块2 -->
@ -22,8 +29,15 @@
<span></span> <span></span>
</div> </div>
<div class="pieBox"> <div class="pieBox">
<pieChart :colorList='colorList' style="width: 100%; height: 100%" color="#1ffdfa" chart-title="扫描数量分析" <pieChart
:chart-data="chartData" :x-axis-data="xArry" /> :colorList="colorList"
style="width: 100%; height: 100%"
color="#1ffdfa"
chart-title="扫描数量分析"
:chart-data="chartData"
:x-axis-data="xArry"
:constructionPersonnel="constructionPersonnel"
/>
</div> </div>
</div> </div>
<!-- 左侧模块3 --> <!-- 左侧模块3 -->
@ -39,8 +53,30 @@
</div> </div>
<div class="twoKqjk"> <div class="twoKqjk">
<div class="nameMessage" v-for="(item, i) in peopleList" :key="i"> <div class="nameMessage" v-for="(item, i) in peopleList" :key="i">
<span style="color: #7FFFFC;">{{ item.name }}</span> <div>
<span style="color: #ffffff;">{{ item.value }}</span> <span style="color: #7ffffc">姓名</span>
<span style="color: #ffffff">{{ item.value }}</span>
</div>
<div>
<span style="color: #7ffffc">岗位</span>
<span style="color: #ffffff">{{ item.value }}</span>
</div>
<div>
<span style="color: #7ffffc">体温</span>
<span style="color: #ffffff">{{ item.value }}</span>
</div>
<div>
<span style="color: #7ffffc">入场时间</span>
<span style="color: #ffffff">{{ item.value }}</span>
</div>
<div>
<span style="color: #7ffffc">考勤类型</span>
<span style="color: #ffffff">{{ item.value }}</span>
</div>
<div>
<span style="color: #7ffffc">打卡设备</span>
<span style="color: #ffffff">{{ item.value }}</span>
</div>
</div> </div>
</div> </div>
</div> </div>
@ -52,48 +88,51 @@
<span>站班会记录</span> <span>站班会记录</span>
<span></span> <span></span>
</div> </div>
<div class="meeting" style="top: 75px;">基本信息</div> <div class="meeting" style="top: 75px">基本信息</div>
<div class="videoBox"> <div class="videoBox">
<div class="oneCls"> <div class="oneCls">
<img src="@/assets/pic/23.png" alt="" /> <img src="@/assets/pic/23.png" alt="" />
</div> </div>
<div class="mesBox"> <div class="mesBox">
<div> <div>
<span style="color: #82dddb;">会议时间</span> <span style="color: #82dddb">会议时间</span>
<span style="color: #ffffff;">2023-01-02</span> <span style="color: #ffffff">2023-01-02</span>
</div> </div>
<div> <div>
<span style="color: #82dddb;">会议类型</span> <span style="color: #82dddb">会议类型</span>
<span style="color: #ffffff;">项目早会</span> <span style="color: #ffffff">项目早会</span>
</div> </div>
<div> <div>
<span style="color: #82dddb;">会议主持</span> <span style="color: #82dddb">会议主持</span>
<span style="color: #ffffff;">王毅</span> <span style="color: #ffffff">王毅</span>
</div> </div>
<div> <div>
<span style="color: #82dddb;">参会人员</span> <span style="color: #82dddb">参会人员</span>
<span <span
style="color: #ffffff;line-height: 24px;display: inline-block; white-space: pre-wrap">王小龙高红澄澈</span> style="
color: #ffffff;
line-height: 24px;
display: inline-block;
white-space: pre-wrap;
"
>王小龙高红澄澈</span
>
</div> </div>
</div> </div>
</div> </div>
<div class="meeting">会议内容</div> <div class="meeting">会议内容</div>
<div class='mettiogBox'> <div class="mettiogBox">
<div> <div>
<div> <div>1施工部署</div>
1施工部署
</div>
<div> <div>
(1)土方开挖:条基采用机械开挖局部人工修补余土外运桩基采用人工挖土桩基挖土过程中设置通风设备保证挖土人员的安全 (1)土方开挖:条基采用机械开挖局部人工修补余土外运桩基采用人工挖土桩基挖土过程中设置通风设备保证挖土人员的安全
</div> </div>
<div> <div>
(2)钢筋加工:现场加工现场设置钢筋加工棚布置加工机械梁板钢筋连接采用绑扎接头或闪光对焊柱及墙板钢筋采用电渣压力焊 (2)钢筋加工:现场加工现场设置钢筋加工棚布置加工机械梁板钢筋连接采用绑扎接头或闪光对焊柱及墙板钢筋采用电渣压力焊
</div> </div>
</div> </div>
<div class="lookFor" @click="gantDialog"></div> <div class="lookFor" @click="gantDialog"></div>
</div> </div>
</div> </div>
<!-- 右侧模块2 --> <!-- 右侧模块2 -->
<div class="rightThreeBox" :style="{ right: boxNone ? '27px' : '-443px' }"> <div class="rightThreeBox" :style="{ right: boxNone ? '27px' : '-443px' }">
@ -103,8 +142,13 @@
<span></span> <span></span>
</div> </div>
<div class="securityCheck"> <div class="securityCheck">
<RadarChart style="width: 100%; height: 100%" grid-bottom="1%" :color-array="['#021C9F', '#01B1FF']" <RadarChart
:chart-data="qyList" :x-axis-data="qyList.map(item => item.name)" /> style="width: 100%; height: 100%"
grid-bottom="1%"
:color-array="['#021C9F', '#01B1FF']"
:chart-data="qyList"
:x-axis-data="qyList.map((item) => item.name)"
/>
</div> </div>
</div> </div>
<!-- 右侧菜单 --> <!-- 右侧菜单 -->
@ -137,51 +181,57 @@
</div> --> </div> -->
<div class="gttBox" v-if="dialogShow"> <div class="gttBox" v-if="dialogShow">
<div class="closeIcon" @click="dialogShow = false"> <div class="closeIcon" @click="dialogShow = false"></div>
</div>
<div class="tabGtBox"> <div class="tabGtBox">
<div class="nrBox"> <div class="nrBox">
<div class="titName" style="width: 80%;"> <div class="titName" style="width: 80%">
<span></span> <span></span>
<span>站班会记录</span> <span>站班会记录</span>
</div> </div>
<div class="meet2ing" style="top: 58px; left: 27px">基本信息</div> <div class="meet2ing" style="top: 58px; left: 27px">基本信息</div>
<div class="videoBox" style="top: 101px"> <div class="videoBox" style="top: 101px">
<div class="oneCls" style="width:361px;height:267px;margin-left: 0;"> <div
class="oneCls"
style="width: 361px; height: 267px; margin-left: 0"
>
<img src="@/assets/pic/23.png" alt="" /> <img src="@/assets/pic/23.png" alt="" />
</div> </div>
<div class="mesBox"> <div class="mesBox">
<div> <div>
<span style="color: #82dddb;">会议时间</span> <span style="color: #82dddb">会议时间</span>
<span style="color: #ffffff;">2023-01-02</span> <span style="color: #ffffff">2023-01-02</span>
</div> </div>
<div> <div>
<span style="color: #82dddb;">会议类型</span> <span style="color: #82dddb">会议类型</span>
<span style="color: #ffffff;">项目早会</span> <span style="color: #ffffff">项目早会</span>
</div> </div>
<div> <div>
<span style="color: #82dddb;">会议主持</span> <span style="color: #82dddb">会议主持</span>
<span style="color: #ffffff;">王毅</span> <span style="color: #ffffff">王毅</span>
</div> </div>
<div> <div>
<span style="color: #82dddb;">参会人员</span> <span style="color: #82dddb">参会人员</span>
<span <span
style="color: #ffffff;line-height: 24px;display: inline-block; white-space: pre-wrap">王小龙高红澄澈</span> style="
color: #ffffff;
line-height: 24px;
display: inline-block;
white-space: pre-wrap;
"
>王小龙高红澄澈</span
>
</div> </div>
</div> </div>
</div> </div>
<div class="meet2ing">会议内容</div> <div class="meet2ing">会议内容</div>
<div class='mettiog2Box'> <div class="mettiog2Box">
<div> <div>
<div> <div>1施工部署</div>
1施工部署
</div>
<div> <div>
(1)土方开挖:条基采用机械开挖局部人工修补余土外运桩基采用人工挖土桩基挖土过程中设置通风设备保证挖土人员的安全 (1)土方开挖:条基采用机械开挖局部人工修补余土外运桩基采用人工挖土桩基挖土过程中设置通风设备保证挖土人员的安全
</div> </div>
<div> <div>
(2)钢筋加工:现场加工现场设置钢筋加工棚布置加工机械梁板钢筋连接采用绑扎接头或闪光对焊柱及墙板钢筋采用电渣压力焊 (2)钢筋加工:现场加工现场设置钢筋加工棚布置加工机械梁板钢筋连接采用绑扎接头或闪光对焊柱及墙板钢筋采用电渣压力焊
</div> </div>
<div> <div>
(3)钢筋加工:现场加工现场设置钢筋加工棚布置加工机械梁板钢筋连接采用绑扎接头或闪光对焊柱及墙板钢筋采用电渣压力焊 (3)钢筋加工:现场加工现场设置钢筋加工棚布置加工机械梁板钢筋连接采用绑扎接头或闪光对焊柱及墙板钢筋采用电渣压力焊
@ -193,11 +243,9 @@
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<!-- 遮罩层 --> <!-- 遮罩层 -->
<div class="zzc" v-if="dialogShow"> <div class="zzc" v-if="dialogShow"></div>
</div>
</div> </div>
<!-- </Resize> --> <!-- </Resize> -->
</template> </template>
@ -206,144 +254,128 @@
import RadarChart from "@/components/common/RadarChart"; import RadarChart from "@/components/common/RadarChart";
import pieChart from "@/components/common/pieChart"; import pieChart from "@/components/common/pieChart";
import pieDateChart from "@/components/common/pieDateChart"; import pieDateChart from "@/components/common/pieDateChart";
import Resize from '../utils/Resize.vue' import Resize from "../utils/Resize.vue";
import {getUserGroup} from "@/api/personnel"; import { getUserGroup, getGroupCensus, getAttend } from "@/api/personnel";
export default { export default {
name: "report", name: "report",
components: { components: {
pieChart, pieChart,
RadarChart, RadarChart,
pieDateChart, pieDateChart,
Resize Resize,
}, },
data() { data() {
return { return {
boxNone: true, boxNone: true,
colorList: ['#00A572', '#008AA4', '#7968D9', '#C7A73E'], colorList: ["#00A572", "#008AA4", "#7968D9", "#C7A73E"],
iconPicList: [ iconPicList: [
{ {
icon: "wendu", icon: "wendu",
name: "温度", name: "温度",
val: "19.8", val: "19.8",
tem: "℃" tem: "℃",
}, },
{ {
icon: "shidu", icon: "shidu",
name: "湿度", name: "湿度",
val: "19.8", val: "19.8",
tem: "%" tem: "%",
}, },
{ {
icon: "yangqi", icon: "yangqi",
name: "氧气值", name: "氧气值",
val: "19.8", val: "19.8",
tem: "%VOL" tem: "%VOL",
}, },
{ {
icon: "co2", icon: "co2",
name: "二氧化碳", name: "二氧化碳",
val: "19.8", val: "19.8",
tem: "%VOL" tem: "%VOL",
}, },
{ {
icon: "ch4", icon: "ch4",
name: "甲烷", name: "甲烷",
val: "19.8", val: "19.8",
tem: "ppm" tem: "ppm",
}, },
{ {
icon: "h2s", icon: "h2s",
name: "硫化氢", name: "硫化氢",
val: "19.8", val: "19.8",
tem: "ppm" tem: "ppm",
} },
], ],
tableData: [ tableData: [
{ {
entName: "我打打死" entName: "我打打死",
}, },
{ {
entName: "我打打死" entName: "我打打死",
}, },
{ {
entName: "我打打死" entName: "我打打死",
}, },
{ {
entName: "我打打死" entName: "我打打死",
} },
], ],
qyList: [ qyList: [
{ {
name: "1月", name: "1月",
value: 12 value: 12,
}, },
{ {
name: "2月", name: "2月",
value: 21 value: 21,
}, },
{ {
name: "3月", name: "3月",
value: 22 value: 22,
}, },
{ {
name: "4月", name: "4月",
value: 12 value: 12,
}, },
{ {
name: "5月", name: "5月",
value: 10 value: 10,
}, },
{ {
name: "6月", name: "6月",
value: 3 value: 3,
}, },
{ {
name: "7月", name: "7月",
value: 4 value: 4,
}, { },
{
name: "8月", name: "8月",
value: 76 value: 76,
}, { },
{
name: "9月", name: "9月",
value: 22 value: 22,
}, { },
{
name: "10月", name: "10月",
value: 1 value: 1,
}, { },
{
name: "11月", name: "11月",
value: 32 value: 32,
}, { },
{
name: "12月", name: "12月",
value: 12 value: 12,
} },
], ],
xArry: [], xArry: [],
chartData: [], chartData: [],
peopleList: [ peopleList: [
{ {
name: "姓名", name:'王刚'
value: ":王刚" }
},
{
name: "岗位",
value: ":项目经理"
},
{
name: "体温",
value: "36.5℃"
},
{
name: "入场时间",
value: "2022-11-26"
},
{
name: "考勤类型",
value: ":进场"
},
{
name: "打卡设备",
value: "1号打卡机"
},
], ],
vdaH: 0, vdaH: 0,
type: false, type: false,
@ -352,19 +384,19 @@ export default {
innerHeight: null, innerHeight: null,
dialogShow: false, dialogShow: false,
topicSends: [], topicSends: [],
pieData:[], pieData: [], //,
constructionPersonnel: [], //
}; };
}, },
created() { created() {
let h = document.documentElement.clientHeight || document.body.clientHeight; let h = document.documentElement.clientHeight || document.body.clientHeight;
this.vdaH = h - 0 + "px"; this.vdaH = h - 0 + "px";
console.log("this.topicSends",this.topicSends) console.log("this.topicSends", this.topicSends);
console.log("this.iconPicList",this.iconPicList) console.log("this.iconPicList", this.iconPicList);
}, },
mounted() { mounted() {
this.getUser() this.getUser();
this.createMqtt() this.createMqtt();
// this.switchDiv(); // this.switchDiv();
// window.onresize = () => { // window.onresize = () => {
// return (() => { // return (() => {
@ -374,22 +406,33 @@ export default {
// } // }
}, },
methods: { methods: {
//
getUser() { getUser() {
let projectId = sessionStorage.getItem("projectId") let projectId = sessionStorage.getItem("projectId");
console.log("projectId",projectId) console.log("projectId", projectId);
//
getUserGroup({ getUserGroup({
projectId:projectId projectId: projectId,
}).then((res) => { }).then((res) => {
console.log("res.data.data",res.data.data) console.log("res.data.data", res.data.data);
// this.projectUser = res.data.data // this.projectUser = res.data.data
this.pieData= res.data.data this.pieData = res.data.data;
}) });
//
getGroupCensus({
projectId: projectId,
}).then((res) => {
this.constructionPersonnel = res.data.data;
});
getAttend({
projectId: projectId,
}).then((res) => {
console.log(res.data, "=============");
});
}, },
createMqtt() {
this.topicSends = ['webdata']; createMqtt() {
console.log("this.topicSends",this.topicSends) this.topicSends = ["webdata"];
console.log("this.topicSends", this.topicSends);
window.PubScribe(this.topicSends, this.realInfo); window.PubScribe(this.topicSends, this.realInfo);
}, },
/** 实时数据分类 */ /** 实时数据分类 */
@ -399,32 +442,29 @@ export default {
// //
case "webdata": case "webdata":
try { try {
console.log("message",message) console.log("message", message);
// const utf8decoder = new TextDecoder() // const utf8decoder = new TextDecoder()
// const u8arr = new Uint8Array(message) // const u8arr = new Uint8Array(message)
// const temp = utf8decoder.decode(u8arr) // // const temp = utf8decoder.decode(u8arr) //
// const msg = JSON.parse(temp) //JSON // const msg = JSON.parse(temp) //JSON
// console.log("hert", msg) //msgJSON // console.log("hert", msg) //msgJSON
} catch (error) {}
} catch (error) {
}
break; break;
} }
}, },
disBox() { disBox() {
this.boxNone = !this.boxNone this.boxNone = !this.boxNone;
this.$refs.screenBox.style.animationPlayState='running' this.$refs.screenBox.style.animationPlayState = "running";
}, },
goBack(val) { goBack(val) {
if (val === 1) { if (val === 1) {
this.$router.push('/') this.$router.push("/");
} else { } else {
this.$router.go(0) this.$router.go(0);
} }
}, },
gantDialog() { gantDialog() {
this.dialogShow = true this.dialogShow = true;
}, },
tableRowClassName({ row, rowIndex }) { tableRowClassName({ row, rowIndex }) {
if (rowIndex === 1) { if (rowIndex === 1) {
@ -438,11 +478,11 @@ export default {
childBoxClick(val) { childBoxClick(val) {
this.menuType = val; this.menuType = val;
if (val === 3) { if (val === 3) {
this.$router.push('/progress') this.$router.push("/progress");
} else if (val === 2) { } else if (val === 2) {
this.$router.push('/videoSurveillance') this.$router.push("/videoSurveillance");
} else if (val === 4) { } else if (val === 4) {
this.$router.push('/management') this.$router.push("/management");
} }
}, },
switchDiv() { switchDiv() {
@ -454,11 +494,10 @@ export default {
setTimeout(() => { setTimeout(() => {
// //
this.$refs.switchBtn.style.display = "block"; this.$refs.switchBtn.style.display = "block";
}, 800) }, 800);
}
} }
}, },
},
}; };
</script> </script>
@ -491,7 +530,7 @@ export default {
background: url("~@/assets/pic/close.png") no-repeat; background: url("~@/assets/pic/close.png") no-repeat;
background-size: 100% 100%; background-size: 100% 100%;
height: 16px; height: 16px;
color: #90F2EB; color: #90f2eb;
float: right; float: right;
font-size: 50px; font-size: 50px;
cursor: pointer; cursor: pointer;
@ -597,7 +636,6 @@ export default {
.dh2 { .dh2 {
animation-fill-mode: forwards; animation-fill-mode: forwards;
animation: myt2est 0.5s linear; animation: myt2est 0.5s linear;
} }
.screenBox { .screenBox {
width: 46px; width: 46px;
@ -634,7 +672,8 @@ export default {
.meet2ing { .meet2ing {
width: 76px; width: 76px;
height: 29px; height: 29px;
background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFEAAAAdCAYAAADSFYAhAAAAAXNSR0IArs4c6QAABD9JREFUaEPtWk9oHFUY/35vD+bktbvjxZsoSot/sKJoqbaltaUgUkQQK4KIqOwkama3PeRgs9mS3Q0ILeTgwYMHgxfbHurBQynUQ715KIKK2OyaQEuEEtumeZ9kZ97szpt9+95uEjPE5hLmve/7fjO/9/u+982bRT4o7gHEI9T9x4zENcCJa9uF8tf99Lgqjs0uo/irLHlxZOkr7AiKe8Hi0X68CJLRtGj/V1c2LtV86NXtl4xni5NVfBb0x0Klfh5e4L/CwGNJ5UVKXI1GcxENShEyIkFGdiKXVCqicd1ejau4Mcua0nW7jOKD8H2zUru2RuJ+AI+vRylmJbkpbr1K3SL8e60bt87S7OwK8uPFg0LknrCllNO8jCQmck7mG270n+LztWal/t3aMyBfLr4Kxs72Aw1awG0s2IqnSlvTBmOLb5vfRHzB9O18pf5LmzZv3D8CYJftfu7Pdxhg4tvNX6/XaW6unXrwTvhHSdKTvUlS1cpEoW2pTf42P31fzxo+/6RSuU1i4bPiayREgkSRrvR9hahTYnIXhj5RamUk6/j3iL9cmGr8FlehfGnsdQF+Wmvk+mevLjBXYZmiDrhotIX4LOjv1mR9iojitg75sn9MMJ65X/PcGFiVfGmh2jjXbY0dZf8NwXg2qcRIWnFeuQGkrNzaxI5brOjs4t9ZXandPP3F9QSJXvmTN4l4dy+apJThO3RUswTCS8nJF5R4XAsSZ6myj2qigNDecHovUtbwQVhsVWqf63eLQqn4Fkg8N6TW/lduUsoLf1VnLqRIzJf8t0F4PiHP6GKwo5uN41MdIWUNX66IkwvT04spEr2S/w4xXtg4CrZnJAb/3qo0UqncrnZeyX+XGS8mHn3QlsORN+fWO4v4jK9b1drFXo+KQlB8DxAvhZMqgVKHsMlD2jiSnnAGsw6y5qAOf/UEzhY+M/E/t+VHSzMzSwYS/fdB2BPuwppJzKlh3KRAWxxTsbP5KTxbsbTFGRAfzD/PV3uncpjOgf8BBPaGvYtjXupmw6bfRr15bDq+ODM/Nf2DUTNe4H9IwMtD0rf93ZhWaOTW8ebE7LKRxEJp9GMQ7dv+bAz3hEx8pVVpTPbzRiHwfSLsTxq5ft3TvgqSq59+S8PGGdbPHR9Mk81q7XJfEvOBPwbgQLeRdY8dblGNe7oeLjP4TMvNkT+P0cTc3b4keoH/KQEH+/OiFGZaeX08RYuhtXFdjS3CZ7rYnKpXbXcJrzw6TkSH1gzZsDvHytB205iZyM9kl+pMtNOduEvMGn6Ox1qnGletJBaC0RKIDtsM+84P22KsC7TLeTPwQTebDzx4lCYmrI0fHhr3T5LAkbBNjNKm8+LSFkm6nUtuIIKS6Ww6Fozjd6pjIn6m8MHftCr1uss6oxCMPUU5fjhM5/D8ECI679N/qaA+J5vGTYiO9lnCv7vMP95oNOZdSPwXtf3hFdhdhzQAAAAASUVORK5CYII=) no-repeat; background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFEAAAAdCAYAAADSFYAhAAAAAXNSR0IArs4c6QAABD9JREFUaEPtWk9oHFUY/35vD+bktbvjxZsoSot/sKJoqbaltaUgUkQQK4KIqOwkama3PeRgs9mS3Q0ILeTgwYMHgxfbHurBQynUQ715KIKK2OyaQEuEEtumeZ9kZ97szpt9+95uEjPE5hLmve/7fjO/9/u+982bRT4o7gHEI9T9x4zENcCJa9uF8tf99Lgqjs0uo/irLHlxZOkr7AiKe8Hi0X68CJLRtGj/V1c2LtV86NXtl4xni5NVfBb0x0Klfh5e4L/CwGNJ5UVKXI1GcxENShEyIkFGdiKXVCqicd1ejau4Mcua0nW7jOKD8H2zUru2RuJ+AI+vRylmJbkpbr1K3SL8e60bt87S7OwK8uPFg0LknrCllNO8jCQmck7mG270n+LztWal/t3aMyBfLr4Kxs72Aw1awG0s2IqnSlvTBmOLb5vfRHzB9O18pf5LmzZv3D8CYJftfu7Pdxhg4tvNX6/XaW6unXrwTvhHSdKTvUlS1cpEoW2pTf42P31fzxo+/6RSuU1i4bPiayREgkSRrvR9hahTYnIXhj5RamUk6/j3iL9cmGr8FlehfGnsdQF+Wmvk+mevLjBXYZmiDrhotIX4LOjv1mR9iojitg75sn9MMJ65X/PcGFiVfGmh2jjXbY0dZf8NwXg2qcRIWnFeuQGkrNzaxI5brOjs4t9ZXandPP3F9QSJXvmTN4l4dy+apJThO3RUswTCS8nJF5R4XAsSZ6myj2qigNDecHovUtbwQVhsVWqf63eLQqn4Fkg8N6TW/lduUsoLf1VnLqRIzJf8t0F4PiHP6GKwo5uN41MdIWUNX66IkwvT04spEr2S/w4xXtg4CrZnJAb/3qo0UqncrnZeyX+XGS8mHn3QlsORN+fWO4v4jK9b1drFXo+KQlB8DxAvhZMqgVKHsMlD2jiSnnAGsw6y5qAOf/UEzhY+M/E/t+VHSzMzSwYS/fdB2BPuwppJzKlh3KRAWxxTsbP5KTxbsbTFGRAfzD/PV3uncpjOgf8BBPaGvYtjXupmw6bfRr15bDq+ODM/Nf2DUTNe4H9IwMtD0rf93ZhWaOTW8ebE7LKRxEJp9GMQ7dv+bAz3hEx8pVVpTPbzRiHwfSLsTxq5ft3TvgqSq59+S8PGGdbPHR9Mk81q7XJfEvOBPwbgQLeRdY8dblGNe7oeLjP4TMvNkT+P0cTc3b4keoH/KQEH+/OiFGZaeX08RYuhtXFdjS3CZ7rYnKpXbXcJrzw6TkSH1gzZsDvHytB205iZyM9kl+pMtNOduEvMGn6Ox1qnGletJBaC0RKIDtsM+84P22KsC7TLeTPwQTebDzx4lCYmrI0fHhr3T5LAkbBNjNKm8+LSFkm6nUtuIIKS6Ww6Fozjd6pjIn6m8MHftCr1uss6oxCMPUU5fjhM5/D8ECI679N/qaA+J5vGTYiO9lnCv7vMP95oNOZdSPwXtf3hFdhdhzQAAAAASUVORK5CYII=)
no-repeat;
background-size: 100% 100%; background-size: 100% 100%;
text-align: center; text-align: center;
line-height: 29px; line-height: 29px;
@ -644,14 +683,15 @@ export default {
font-size: 14px; font-size: 14px;
font-family: SourceHanSansCN-Medium, SourceHanSansCN; font-family: SourceHanSansCN-Medium, SourceHanSansCN;
font-weight: 500; font-weight: 500;
color: #FFFFFF; color: #ffffff;
padding-right: 6px; padding-right: 6px;
} }
.meet2ing { .meet2ing {
width: 76px; width: 76px;
height: 29px; height: 29px;
background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFEAAAAdCAYAAADSFYAhAAAAAXNSR0IArs4c6QAABD9JREFUaEPtWk9oHFUY/35vD+bktbvjxZsoSot/sKJoqbaltaUgUkQQK4KIqOwkama3PeRgs9mS3Q0ILeTgwYMHgxfbHurBQynUQ715KIKK2OyaQEuEEtumeZ9kZ97szpt9+95uEjPE5hLmve/7fjO/9/u+982bRT4o7gHEI9T9x4zENcCJa9uF8tf99Lgqjs0uo/irLHlxZOkr7AiKe8Hi0X68CJLRtGj/V1c2LtV86NXtl4xni5NVfBb0x0Klfh5e4L/CwGNJ5UVKXI1GcxENShEyIkFGdiKXVCqicd1ejau4Mcua0nW7jOKD8H2zUru2RuJ+AI+vRylmJbkpbr1K3SL8e60bt87S7OwK8uPFg0LknrCllNO8jCQmck7mG270n+LztWal/t3aMyBfLr4Kxs72Aw1awG0s2IqnSlvTBmOLb5vfRHzB9O18pf5LmzZv3D8CYJftfu7Pdxhg4tvNX6/XaW6unXrwTvhHSdKTvUlS1cpEoW2pTf42P31fzxo+/6RSuU1i4bPiayREgkSRrvR9hahTYnIXhj5RamUk6/j3iL9cmGr8FlehfGnsdQF+Wmvk+mevLjBXYZmiDrhotIX4LOjv1mR9iojitg75sn9MMJ65X/PcGFiVfGmh2jjXbY0dZf8NwXg2qcRIWnFeuQGkrNzaxI5brOjs4t9ZXandPP3F9QSJXvmTN4l4dy+apJThO3RUswTCS8nJF5R4XAsSZ6myj2qigNDecHovUtbwQVhsVWqf63eLQqn4Fkg8N6TW/lduUsoLf1VnLqRIzJf8t0F4PiHP6GKwo5uN41MdIWUNX66IkwvT04spEr2S/w4xXtg4CrZnJAb/3qo0UqncrnZeyX+XGS8mHn3QlsORN+fWO4v4jK9b1drFXo+KQlB8DxAvhZMqgVKHsMlD2jiSnnAGsw6y5qAOf/UEzhY+M/E/t+VHSzMzSwYS/fdB2BPuwppJzKlh3KRAWxxTsbP5KTxbsbTFGRAfzD/PV3uncpjOgf8BBPaGvYtjXupmw6bfRr15bDq+ODM/Nf2DUTNe4H9IwMtD0rf93ZhWaOTW8ebE7LKRxEJp9GMQ7dv+bAz3hEx8pVVpTPbzRiHwfSLsTxq5ft3TvgqSq59+S8PGGdbPHR9Mk81q7XJfEvOBPwbgQLeRdY8dblGNe7oeLjP4TMvNkT+P0cTc3b4keoH/KQEH+/OiFGZaeX08RYuhtXFdjS3CZ7rYnKpXbXcJrzw6TkSH1gzZsDvHytB205iZyM9kl+pMtNOduEvMGn6Ox1qnGletJBaC0RKIDtsM+84P22KsC7TLeTPwQTebDzx4lCYmrI0fHhr3T5LAkbBNjNKm8+LSFkm6nUtuIIKS6Ww6Fozjd6pjIn6m8MHftCr1uss6oxCMPUU5fjhM5/D8ECI679N/qaA+J5vGTYiO9lnCv7vMP95oNOZdSPwXtf3hFdhdhzQAAAAASUVORK5CYII=) no-repeat; background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFEAAAAdCAYAAADSFYAhAAAAAXNSR0IArs4c6QAABD9JREFUaEPtWk9oHFUY/35vD+bktbvjxZsoSot/sKJoqbaltaUgUkQQK4KIqOwkama3PeRgs9mS3Q0ILeTgwYMHgxfbHurBQynUQ715KIKK2OyaQEuEEtumeZ9kZ97szpt9+95uEjPE5hLmve/7fjO/9/u+982bRT4o7gHEI9T9x4zENcCJa9uF8tf99Lgqjs0uo/irLHlxZOkr7AiKe8Hi0X68CJLRtGj/V1c2LtV86NXtl4xni5NVfBb0x0Klfh5e4L/CwGNJ5UVKXI1GcxENShEyIkFGdiKXVCqicd1ejau4Mcua0nW7jOKD8H2zUru2RuJ+AI+vRylmJbkpbr1K3SL8e60bt87S7OwK8uPFg0LknrCllNO8jCQmck7mG270n+LztWal/t3aMyBfLr4Kxs72Aw1awG0s2IqnSlvTBmOLb5vfRHzB9O18pf5LmzZv3D8CYJftfu7Pdxhg4tvNX6/XaW6unXrwTvhHSdKTvUlS1cpEoW2pTf42P31fzxo+/6RSuU1i4bPiayREgkSRrvR9hahTYnIXhj5RamUk6/j3iL9cmGr8FlehfGnsdQF+Wmvk+mevLjBXYZmiDrhotIX4LOjv1mR9iojitg75sn9MMJ65X/PcGFiVfGmh2jjXbY0dZf8NwXg2qcRIWnFeuQGkrNzaxI5brOjs4t9ZXandPP3F9QSJXvmTN4l4dy+apJThO3RUswTCS8nJF5R4XAsSZ6myj2qigNDecHovUtbwQVhsVWqf63eLQqn4Fkg8N6TW/lduUsoLf1VnLqRIzJf8t0F4PiHP6GKwo5uN41MdIWUNX66IkwvT04spEr2S/w4xXtg4CrZnJAb/3qo0UqncrnZeyX+XGS8mHn3QlsORN+fWO4v4jK9b1drFXo+KQlB8DxAvhZMqgVKHsMlD2jiSnnAGsw6y5qAOf/UEzhY+M/E/t+VHSzMzSwYS/fdB2BPuwppJzKlh3KRAWxxTsbP5KTxbsbTFGRAfzD/PV3uncpjOgf8BBPaGvYtjXupmw6bfRr15bDq+ODM/Nf2DUTNe4H9IwMtD0rf93ZhWaOTW8ebE7LKRxEJp9GMQ7dv+bAz3hEx8pVVpTPbzRiHwfSLsTxq5ft3TvgqSq59+S8PGGdbPHR9Mk81q7XJfEvOBPwbgQLeRdY8dblGNe7oeLjP4TMvNkT+P0cTc3b4keoH/KQEH+/OiFGZaeX08RYuhtXFdjS3CZ7rYnKpXbXcJrzw6TkSH1gzZsDvHytB205iZyM9kl+pMtNOduEvMGn6Ox1qnGletJBaC0RKIDtsM+84P22KsC7TLeTPwQTebDzx4lCYmrI0fHhr3T5LAkbBNjNKm8+LSFkm6nUtuIIKS6Ww6Fozjd6pjIn6m8MHftCr1uss6oxCMPUU5fjhM5/D8ECI679N/qaA+J5vGTYiO9lnCv7vMP95oNOZdSPwXtf3hFdhdhzQAAAAASUVORK5CYII=)
no-repeat;
background-size: 100% 100%; background-size: 100% 100%;
text-align: center; text-align: center;
line-height: 29px; line-height: 29px;
@ -660,14 +700,15 @@ export default {
left: 29px; left: 29px;
font-size: 14px; font-size: 14px;
font-weight: 500; font-weight: 500;
color: #FFFFFF; color: #ffffff;
padding-right: 6px; padding-right: 6px;
} }
.meeting { .meeting {
width: 76px; width: 76px;
height: 29px; height: 29px;
background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFEAAAAdCAYAAADSFYAhAAAAAXNSR0IArs4c6QAABD9JREFUaEPtWk9oHFUY/35vD+bktbvjxZsoSot/sKJoqbaltaUgUkQQK4KIqOwkama3PeRgs9mS3Q0ILeTgwYMHgxfbHurBQynUQ715KIKK2OyaQEuEEtumeZ9kZ97szpt9+95uEjPE5hLmve/7fjO/9/u+982bRT4o7gHEI9T9x4zENcCJa9uF8tf99Lgqjs0uo/irLHlxZOkr7AiKe8Hi0X68CJLRtGj/V1c2LtV86NXtl4xni5NVfBb0x0Klfh5e4L/CwGNJ5UVKXI1GcxENShEyIkFGdiKXVCqicd1ejau4Mcua0nW7jOKD8H2zUru2RuJ+AI+vRylmJbkpbr1K3SL8e60bt87S7OwK8uPFg0LknrCllNO8jCQmck7mG270n+LztWal/t3aMyBfLr4Kxs72Aw1awG0s2IqnSlvTBmOLb5vfRHzB9O18pf5LmzZv3D8CYJftfu7Pdxhg4tvNX6/XaW6unXrwTvhHSdKTvUlS1cpEoW2pTf42P31fzxo+/6RSuU1i4bPiayREgkSRrvR9hahTYnIXhj5RamUk6/j3iL9cmGr8FlehfGnsdQF+Wmvk+mevLjBXYZmiDrhotIX4LOjv1mR9iojitg75sn9MMJ65X/PcGFiVfGmh2jjXbY0dZf8NwXg2qcRIWnFeuQGkrNzaxI5brOjs4t9ZXandPP3F9QSJXvmTN4l4dy+apJThO3RUswTCS8nJF5R4XAsSZ6myj2qigNDecHovUtbwQVhsVWqf63eLQqn4Fkg8N6TW/lduUsoLf1VnLqRIzJf8t0F4PiHP6GKwo5uN41MdIWUNX66IkwvT04spEr2S/w4xXtg4CrZnJAb/3qo0UqncrnZeyX+XGS8mHn3QlsORN+fWO4v4jK9b1drFXo+KQlB8DxAvhZMqgVKHsMlD2jiSnnAGsw6y5qAOf/UEzhY+M/E/t+VHSzMzSwYS/fdB2BPuwppJzKlh3KRAWxxTsbP5KTxbsbTFGRAfzD/PV3uncpjOgf8BBPaGvYtjXupmw6bfRr15bDq+ODM/Nf2DUTNe4H9IwMtD0rf93ZhWaOTW8ebE7LKRxEJp9GMQ7dv+bAz3hEx8pVVpTPbzRiHwfSLsTxq5ft3TvgqSq59+S8PGGdbPHR9Mk81q7XJfEvOBPwbgQLeRdY8dblGNe7oeLjP4TMvNkT+P0cTc3b4keoH/KQEH+/OiFGZaeX08RYuhtXFdjS3CZ7rYnKpXbXcJrzw6TkSH1gzZsDvHytB205iZyM9kl+pMtNOduEvMGn6Ox1qnGletJBaC0RKIDtsM+84P22KsC7TLeTPwQTebDzx4lCYmrI0fHhr3T5LAkbBNjNKm8+LSFkm6nUtuIIKS6Ww6Fozjd6pjIn6m8MHftCr1uss6oxCMPUU5fjhM5/D8ECI679N/qaA+J5vGTYiO9lnCv7vMP95oNOZdSPwXtf3hFdhdhzQAAAAASUVORK5CYII=) no-repeat; background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFEAAAAdCAYAAADSFYAhAAAAAXNSR0IArs4c6QAABD9JREFUaEPtWk9oHFUY/35vD+bktbvjxZsoSot/sKJoqbaltaUgUkQQK4KIqOwkama3PeRgs9mS3Q0ILeTgwYMHgxfbHurBQynUQ715KIKK2OyaQEuEEtumeZ9kZ97szpt9+95uEjPE5hLmve/7fjO/9/u+982bRT4o7gHEI9T9x4zENcCJa9uF8tf99Lgqjs0uo/irLHlxZOkr7AiKe8Hi0X68CJLRtGj/V1c2LtV86NXtl4xni5NVfBb0x0Klfh5e4L/CwGNJ5UVKXI1GcxENShEyIkFGdiKXVCqicd1ejau4Mcua0nW7jOKD8H2zUru2RuJ+AI+vRylmJbkpbr1K3SL8e60bt87S7OwK8uPFg0LknrCllNO8jCQmck7mG270n+LztWal/t3aMyBfLr4Kxs72Aw1awG0s2IqnSlvTBmOLb5vfRHzB9O18pf5LmzZv3D8CYJftfu7Pdxhg4tvNX6/XaW6unXrwTvhHSdKTvUlS1cpEoW2pTf42P31fzxo+/6RSuU1i4bPiayREgkSRrvR9hahTYnIXhj5RamUk6/j3iL9cmGr8FlehfGnsdQF+Wmvk+mevLjBXYZmiDrhotIX4LOjv1mR9iojitg75sn9MMJ65X/PcGFiVfGmh2jjXbY0dZf8NwXg2qcRIWnFeuQGkrNzaxI5brOjs4t9ZXandPP3F9QSJXvmTN4l4dy+apJThO3RUswTCS8nJF5R4XAsSZ6myj2qigNDecHovUtbwQVhsVWqf63eLQqn4Fkg8N6TW/lduUsoLf1VnLqRIzJf8t0F4PiHP6GKwo5uN41MdIWUNX66IkwvT04spEr2S/w4xXtg4CrZnJAb/3qo0UqncrnZeyX+XGS8mHn3QlsORN+fWO4v4jK9b1drFXo+KQlB8DxAvhZMqgVKHsMlD2jiSnnAGsw6y5qAOf/UEzhY+M/E/t+VHSzMzSwYS/fdB2BPuwppJzKlh3KRAWxxTsbP5KTxbsbTFGRAfzD/PV3uncpjOgf8BBPaGvYtjXupmw6bfRr15bDq+ODM/Nf2DUTNe4H9IwMtD0rf93ZhWaOTW8ebE7LKRxEJp9GMQ7dv+bAz3hEx8pVVpTPbzRiHwfSLsTxq5ft3TvgqSq59+S8PGGdbPHR9Mk81q7XJfEvOBPwbgQLeRdY8dblGNe7oeLjP4TMvNkT+P0cTc3b4keoH/KQEH+/OiFGZaeX08RYuhtXFdjS3CZ7rYnKpXbXcJrzw6TkSH1gzZsDvHytB205iZyM9kl+pMtNOduEvMGn6Ox1qnGletJBaC0RKIDtsM+84P22KsC7TLeTPwQTebDzx4lCYmrI0fHhr3T5LAkbBNjNKm8+LSFkm6nUtuIIKS6Ww6Fozjd6pjIn6m8MHftCr1uss6oxCMPUU5fjhM5/D8ECI679N/qaA+J5vGTYiO9lnCv7vMP95oNOZdSPwXtf3hFdhdhzQAAAAASUVORK5CYII=)
no-repeat;
background-size: 100% 100%; background-size: 100% 100%;
text-align: center; text-align: center;
line-height: 29px; line-height: 29px;
@ -677,7 +718,7 @@ export default {
font-size: 14px; font-size: 14px;
font-family: SourceHanSansCN-Medium, SourceHanSansCN; font-family: SourceHanSansCN-Medium, SourceHanSansCN;
font-weight: 500; font-weight: 500;
color: #FFFFFF; color: #ffffff;
padding-right: 6px; padding-right: 6px;
@media only screen and (max-height: 1000px) { @media only screen and (max-height: 1000px) {
@ -685,7 +726,6 @@ export default {
} }
} }
.mettiog2Box { .mettiog2Box {
line-height: 29px; line-height: 29px;
position: absolute; position: absolute;
@ -693,7 +733,7 @@ export default {
font-size: 14px; font-size: 14px;
font-family: SourceHanSansCN-Medium, SourceHanSansCN; font-family: SourceHanSansCN-Medium, SourceHanSansCN;
font-weight: 500; font-weight: 500;
color: #FFFFFF; color: #ffffff;
padding: 0 22px 0 0px; padding: 0 22px 0 0px;
height: 260px; height: 260px;
} }
@ -705,7 +745,7 @@ export default {
font-size: 14px; font-size: 14px;
font-family: SourceHanSansCN-Medium, SourceHanSansCN; font-family: SourceHanSansCN-Medium, SourceHanSansCN;
font-weight: 500; font-weight: 500;
color: #FFFFFF; color: #ffffff;
padding: 0 22px 0 30px; padding: 0 22px 0 30px;
height: 260px; height: 260px;
@ -781,7 +821,7 @@ export default {
width: 135px; width: 135px;
height: 160px; height: 160px;
padding: 5px; padding: 5px;
border: 1px solid #00EBEB; border: 1px solid #00ebeb;
margin-top: 38px; margin-top: 38px;
margin-left: 18px; margin-left: 18px;
margin-right: 14px; margin-right: 14px;
@ -1099,14 +1139,14 @@ export default {
.titLeft { .titLeft {
width: 138px; width: 138px;
height: 40px; height: 40px;
background: #025A5F; background: #025a5f;
line-height: 40px; line-height: 40px;
text-align: center; text-align: center;
span:nth-child(1), span:nth-child(1),
span:nth-child(2) { span:nth-child(2) {
font-size: 14px; font-size: 14px;
color: #3CFFF9; color: #3cfff9;
letter-spacing: 1px; letter-spacing: 1px;
font-weight: 400; font-weight: 400;
cursor: pointer; cursor: pointer;
@ -1126,7 +1166,7 @@ export default {
padding-right: 25px; padding-right: 25px;
font-size: 14px; font-size: 14px;
font-weight: 400; font-weight: 400;
color: #D1FFFE; color: #d1fffe;
span:nth-child(2) { span:nth-child(2) {
display: inline-block; display: inline-block;
@ -1138,6 +1178,5 @@ export default {
background-size: 100% 100%; background-size: 100% 100%;
} }
} }
} }
</style> </style>

View File

@ -164,8 +164,8 @@
<span>计划进度</span> <span>计划进度</span>
</div> </div>
<div class="tabGtBox"> <div class="tabGtBox">
<!-- <tabGtt></tabGtt> --> <TabGtt :tableData="tableData" ></TabGtt>
<div class="ggtHeader"> <!-- <div class="ggtHeader">
<div style="margin-left: 18px;"> <div style="margin-left: 18px;">
任务名称 任务名称
</div> </div>
@ -257,7 +257,7 @@
<span>2011-11-22</span> <span>2011-11-22</span>
<span style="left: 790px;width:18;"></span> <span style="left: 790px;width:18;"></span>
</div> </div>
</div> </div> -->
</div> </div>
</div> </div>
@ -277,7 +277,7 @@ import lineBar from "@/components/common/lineBarChart";
import pieChartUnImg from "@/components/common/pieChartUnImg"; import pieChartUnImg from "@/components/common/pieChartUnImg";
import pieDateChart from "@/components/common/pieDateChart"; import pieDateChart from "@/components/common/pieDateChart";
import Resize from '../utils/Resize.vue' import Resize from '../utils/Resize.vue'
import tabGtt from '@/components/common/tableGantt' import TabGtt from '@/components/common/tableGantt'
import {getProjectInfo,getProjectDuration,getProjectInvestment,getPlanProgress,getActualProgress,getCompleteMonthStatus} from "@/api/api"; import {getProjectInfo,getProjectDuration,getProjectInvestment,getPlanProgress,getActualProgress,getCompleteMonthStatus} from "@/api/api";
export default { export default {
@ -287,7 +287,7 @@ export default {
lineBar, lineBar,
pieDateChart, pieDateChart,
Resize, Resize,
tabGtt TabGtt
}, },
data() { data() {
return { return {
@ -626,7 +626,8 @@ export default {
.tabGtBox { .tabGtBox {
position: absolute; position: absolute;
top: 50px; top: 50px;
width: 96%;
left: 20px;
.ggtHeader { .ggtHeader {
width: 820px; width: 820px;
height: 60px; height: 60px;

Binary file not shown.

After

Width:  |  Height:  |  Size: 76 KiB

View File

@ -1,5 +1,5 @@
body { padding: 0; margin: 0 } body { padding: 0; margin: 0 }
#unity-container { position: absolute;width: 1920px;height: 1080px; } #unity-container { position: absolute }
#unity-container.unity-desktop { left: 50%; top: 50%; transform: translate(-50%, -50%) } #unity-container.unity-desktop { left: 50%; top: 50%; transform: translate(-50%, -50%) }
#unity-container.unity-mobile { width: 100%; height: 100% } #unity-container.unity-mobile { width: 100%; height: 100% }
#unity-canvas { background: #231F20 } #unity-canvas { background: #231F20 }

View File

@ -8,7 +8,7 @@
<link rel="stylesheet" href="TemplateData/style.css"> <link rel="stylesheet" href="TemplateData/style.css">
</head> </head>
<body> <body>
<div id="unity-container" class="unity-desktop"> <div id="unity-container" style="height: 100%;" class="unity-desktop">
<canvas id="unity-canvas" ></canvas> <canvas id="unity-canvas" ></canvas>
<div id="unity-loading-bar"> <div id="unity-loading-bar">
<div id="unity-logo"></div> <div id="unity-logo"></div>
@ -18,9 +18,9 @@
</div> </div>
<div id="unity-warning"> </div> <div id="unity-warning"> </div>
<div id="unity-footer"> <div id="unity-footer">
<div id="unity-webgl-logo"></div> <!-- <div id="unity-webgl-logo"></div>
<div id="unity-fullscreen-button"></div> <div id="unity-fullscreen-button"></div>
<div id="unity-build-title">MqttTest</div> <div id="unity-build-title">MqttTest</div> -->
</div> </div>
</div> </div>
<script> <script>
@ -109,14 +109,26 @@
createUnityInstance(canvas, config, (progress) => { createUnityInstance(canvas, config, (progress) => {
progressBarFull.style.width = 100 * progress + "%"; progressBarFull.style.width = 100 * progress + "%";
}).then((unityInstance) => { }).then((unityInstance) => {
unity = unityInstance
loadingBar.style.display = "none"; loadingBar.style.display = "none";
fullscreenButton.onclick = () => { // fullscreenButton.onclick = () => {
unityInstance.SetFullscreen(1); // unityInstance.SetFullscreen(1);
}; // };
}).catch((message) => { }).catch((message) => {
alert(message); alert(message);
}); });
}; };
function fullScreen(){
if(unity!=null){
unity.SendMessage("GameManager",'FullScreen');
}
}
function exitFullScreen(){
if(unity!=null){
unity.SendMessage("GameManager",'ExitFullScreen');
}
}
document.body.appendChild(script); document.body.appendChild(script);
</script> </script>
</body> </body>