Merge branch 'dev_xd' of http://62.234.3.186:3000/jiangyq/YZProjectCloud into dev_xd
commit
ea16bd847c
|
@ -27,25 +27,13 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<certificate-bar-chart
|
||||
:data="certificateData"
|
||||
:height="100"
|
||||
></certificate-bar-chart>
|
||||
<certificate-bar-chart :data="certificateData" :height="100"></certificate-bar-chart>
|
||||
|
||||
<div class="rank-chart" style="height: calc(100% - 224px)">
|
||||
<div class="rank-chart-title">监控列表</div>
|
||||
<div class="list-max" style="height: calc(100% - 63px)">
|
||||
<div
|
||||
class="list-min"
|
||||
id="listMin"
|
||||
@mouseout="listMinMouseout"
|
||||
@mouseover="listMinMouseover"
|
||||
>
|
||||
<div
|
||||
class="list-for"
|
||||
v-for="(item, i) in listData"
|
||||
@click="onTowerCraneList(i)"
|
||||
>
|
||||
<div class="list-min" id="listMin" @mouseout="listMinMouseout" @mouseover="listMinMouseover">
|
||||
<div class="list-for" :key="i" v-for="(item, i) in listData" @click="onTowerCraneList(i)">
|
||||
<div :class="index == i ? 'list-con active' : 'list-con'">
|
||||
<div class="list-top">
|
||||
<div class="list-img">
|
||||
|
@ -53,16 +41,13 @@
|
|||
</div>
|
||||
<div class="list-info">
|
||||
<div class="list-info-name">
|
||||
设备名称:<span>{{ item.deviceName }}</span>
|
||||
设备名称:
|
||||
<span>{{ item.deviceName }}</span>
|
||||
</div>
|
||||
<div class="list-info-name">
|
||||
设备状态:
|
||||
<span class="list-info-state" v-if="item.deviceState != 0"
|
||||
>离线</span
|
||||
>
|
||||
<span class="list-info-state active" v-if="item.deviceState == 0"
|
||||
>在线</span
|
||||
>
|
||||
<span class="list-info-state" v-if="item.deviceState != 0">离线</span>
|
||||
<span class="list-info-state active" v-if="item.deviceState == 0">在线</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -70,29 +55,34 @@
|
|||
<el-row>
|
||||
<el-col :span="10">
|
||||
<div class="list-details">
|
||||
司机:<span v-cloak>{{ item.driverName }}</span>
|
||||
司机:
|
||||
<span v-cloak>{{ item.driverName }}</span>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="14">
|
||||
<div class="list-details">
|
||||
电话:<span v-cloak>{{ item.driverPhone }}</span>
|
||||
电话:
|
||||
<span v-cloak>{{ item.driverPhone }}</span>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="10">
|
||||
<div class="list-details">
|
||||
安全员:<span v-cloak>{{ item.safetyOfficerName }}</span>
|
||||
安全员:
|
||||
<span v-cloak>{{ item.safetyOfficerName }}</span>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="14">
|
||||
<div class="list-details">
|
||||
电话:<span v-cloak>{{ item.safetyOfficerPhone }}</span>
|
||||
电话:
|
||||
<span v-cloak>{{ item.safetyOfficerPhone }}</span>
|
||||
</div>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
|
||||
<div class="list-time">
|
||||
最后一次启用时间:<span v-cloak>{{ item.lastEnabledTime }}</span>
|
||||
最后一次启用时间:
|
||||
<span v-cloak>{{ item.lastEnabledTime }}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -176,11 +166,7 @@
|
|||
</el-col>
|
||||
</el-row>
|
||||
<div class="safe-tower-crane-max">
|
||||
<div
|
||||
class="safe-tower-crane-min"
|
||||
@mouseout="listMinMouseout"
|
||||
@mouseover="listMinMouseover"
|
||||
>
|
||||
<div class="safe-tower-crane-min" @mouseout="listMinMouseout" @mouseover="listMinMouseover">
|
||||
<el-row>
|
||||
<el-col :span="2">
|
||||
<div class="safe-tower-left" @click="safeTowerLeft"></div>
|
||||
|
@ -228,20 +214,13 @@
|
|||
<div class="survey-oil-hr"></div>
|
||||
<div class="survey-oil-text">报警类型</div>
|
||||
</div>
|
||||
<div
|
||||
class="analyse-number-max"
|
||||
id="afootOverflowType"
|
||||
@mouseout="listMinMouseoutType"
|
||||
@mouseover="listMinMouseoverType"
|
||||
>
|
||||
<div
|
||||
class="glr-login-number-max analyse-num-max"
|
||||
v-for="item in warningList"
|
||||
>
|
||||
<div class="analyse-number-max" id="afootOverflowType" @mouseout="listMinMouseoutType" @mouseover="listMinMouseoverType">
|
||||
<div :key="index" class="glr-login-number-max analyse-num-max" v-for="(item,index) in warningList">
|
||||
<div class="glr-login-number-bgd glr-login-number-red-bgd"></div>
|
||||
<div class="glr-login-number analyse-login-numbe">
|
||||
<div v-cloak>
|
||||
<img src="images/text_red_spot.png" />{{ item.warnType }}
|
||||
<img src="images/text_red_spot.png" />
|
||||
{{ item.warnType }}
|
||||
</div>
|
||||
<div class="glr-rate-value glr-rate-red-value">
|
||||
<span v-cloak>{{ item.warnCount }}</span>
|
||||
|
@ -258,33 +237,17 @@
|
|||
<div class="analyse-text">正在发生</div>
|
||||
</div>
|
||||
<div class="afoot-content safe-afoot-content">
|
||||
<div
|
||||
class="afoot-overflow safe-afoot-overflow"
|
||||
id="afootOverflow"
|
||||
@mouseout="warningListMinMouseout"
|
||||
@mouseover="warningListMinMouseover"
|
||||
>
|
||||
<div class="afoot-overflow safe-afoot-overflow" id="afootOverflow" @mouseout="warningListMinMouseout" @mouseover="warningListMinMouseover">
|
||||
<div v-if="warningData.length == 0" class="not-data">暂无预警数据</div>
|
||||
<div
|
||||
v-if="warningData.length > 0"
|
||||
class="afoot-con-for"
|
||||
style="height: 180px"
|
||||
v-for="item in warningData"
|
||||
>
|
||||
<div class="afoot-machinery-nam safe-afoot-machinery-nam" v-cloak>
|
||||
{{ item.warn_context }}
|
||||
</div>
|
||||
<div :key="idx" v-if="warningData.length > 0" class="afoot-con-for" style="height: 180px" v-for="(item,idx) in warningData">
|
||||
<div class="afoot-machinery-nam safe-afoot-machinery-nam" v-cloak>{{ item.warn_context }}</div>
|
||||
<div class="afoot-machinery-info">
|
||||
<div class="afoot-machinery-img">
|
||||
<img :src="item.images" v-if="item.images" />
|
||||
</div>
|
||||
<div class="afoot-machinery-data">
|
||||
<div class="afoot-machinery-state" v-cloak>
|
||||
预警值:{{ item.warn_value }}
|
||||
</div>
|
||||
<div class="afoot-machinery-time" v-cloak>
|
||||
{{ item.warn_time }}
|
||||
</div>
|
||||
<div class="afoot-machinery-state" v-cloak>预警值:{{ item.warn_value }}</div>
|
||||
<div class="afoot-machinery-time" v-cloak>{{ item.warn_time }}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -309,7 +272,9 @@
|
|||
</div>
|
||||
<div class="xhz-current-value-data">
|
||||
<div>高度</div>
|
||||
<p><span v-cloak v-html="footInfo.foot0"></span> m</p>
|
||||
<p>
|
||||
<span v-cloak v-html="footInfo.foot0"></span> m
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</el-col>
|
||||
|
@ -322,7 +287,9 @@
|
|||
</div>
|
||||
<div class="xhz-current-value-data">
|
||||
<div>楼层</div>
|
||||
<p><span v-cloak v-html="footInfo.foot1"></span> 层</p>
|
||||
<p>
|
||||
<span v-cloak v-html="footInfo.foot1"></span> 层
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</el-col>
|
||||
|
@ -335,7 +302,9 @@
|
|||
</div>
|
||||
<div class="xhz-current-value-data">
|
||||
<div>当前人数</div>
|
||||
<p><span v-cloak v-html="footInfo.foot2"></span> 人</p>
|
||||
<p>
|
||||
<span v-cloak v-html="footInfo.foot2"></span> 人
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</el-col>
|
||||
|
@ -348,7 +317,9 @@
|
|||
</div>
|
||||
<div class="xhz-current-value-data">
|
||||
<div>当前载重</div>
|
||||
<p><span v-cloak v-html="footInfo.foot3"></span> t</p>
|
||||
<p>
|
||||
<span v-cloak v-html="footInfo.foot3"></span> t
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</el-col>
|
||||
|
@ -361,7 +332,9 @@
|
|||
</div>
|
||||
<div class="xhz-current-value-data">
|
||||
<div>倾角1</div>
|
||||
<p><span v-cloak v-html="footInfo.foot4"></span> °</p>
|
||||
<p>
|
||||
<span v-cloak v-html="footInfo.foot4"></span> °
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</el-col>
|
||||
|
@ -374,7 +347,9 @@
|
|||
</div>
|
||||
<div class="xhz-current-value-data">
|
||||
<div>倾角2</div>
|
||||
<p><span v-cloak v-html="footInfo.foot5"></span> °</p>
|
||||
<p>
|
||||
<span v-cloak v-html="footInfo.foot5"></span> °
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</el-col>
|
||||
|
@ -387,7 +362,9 @@
|
|||
</div>
|
||||
<div class="xhz-current-value-data">
|
||||
<div>风速</div>
|
||||
<p><span v-cloak v-html="footInfo.foot6"></span> m/s</p>
|
||||
<p>
|
||||
<span v-cloak v-html="footInfo.foot6"></span> m/s
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</el-col>
|
||||
|
@ -400,7 +377,9 @@
|
|||
</div>
|
||||
<div class="xhz-current-value-data">
|
||||
<div>速度</div>
|
||||
<p><span v-cloak v-html="footInfo.foot7"></span> m/s</p>
|
||||
<p>
|
||||
<span v-cloak v-html="footInfo.foot7"></span> m/s
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</el-col>
|
||||
|
@ -413,7 +392,9 @@
|
|||
</div>
|
||||
<div class="xhz-current-value-data">
|
||||
<div>速度方向</div>
|
||||
<p><span v-cloak v-html="footInfo.foot8"></span></p>
|
||||
<p>
|
||||
<span v-cloak v-html="footInfo.foot8"></span>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</el-col>
|
||||
|
@ -427,11 +408,7 @@
|
|||
<div class="xhz-current-value-data">
|
||||
<div>前门状态</div>
|
||||
<p>
|
||||
<span
|
||||
:class="footInfo.foot9 == '打开' ? 'open' : 'close'"
|
||||
v-cloak
|
||||
v-html="footInfo.foot9"
|
||||
></span>
|
||||
<span :class="footInfo.foot9 == '打开' ? 'open' : 'close'" v-cloak v-html="footInfo.foot9"></span>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -446,11 +423,7 @@
|
|||
<div class="xhz-current-value-data">
|
||||
<div>后门状态</div>
|
||||
<p>
|
||||
<span
|
||||
:class="footInfo.foot10 == '打开' ? 'open' : 'close'"
|
||||
v-cloak
|
||||
v-html="footInfo.foot10"
|
||||
></span>
|
||||
<span :class="footInfo.foot10 == '打开' ? 'open' : 'close'" v-cloak v-html="footInfo.foot10"></span>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -462,9 +435,11 @@
|
|||
</template>
|
||||
|
||||
<script>
|
||||
import debounce from "lodash.debounce";
|
||||
import "@/components/tower-crane-value-1";
|
||||
import "@/components/tower-crane-value-2";
|
||||
import debounce from 'lodash.debounce'
|
||||
import '@/components/tower-crane-value-1'
|
||||
import '@/components/tower-crane-value-2'
|
||||
import '@/components/dumbwaiter-1.js'
|
||||
import '@/components/dumbwaiter-2.js'
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
|
@ -477,8 +452,8 @@ export default {
|
|||
index: 0,
|
||||
//升降机当前显示数据
|
||||
dumbwaiterValue: {},
|
||||
comName: "dumbwaiter-1",
|
||||
direction: "right",
|
||||
comName: 'dumbwaiter-1',
|
||||
direction: 'right',
|
||||
deviceId: 0,
|
||||
topInfo: {
|
||||
top0: 0,
|
||||
|
@ -500,8 +475,8 @@ export default {
|
|||
foot6: 10,
|
||||
foot7: 10,
|
||||
foot8: 10,
|
||||
foot9: "",
|
||||
foot10: "",
|
||||
foot9: '',
|
||||
foot10: '',
|
||||
},
|
||||
warningData: [],
|
||||
dayWarnCount: 22,
|
||||
|
@ -513,114 +488,112 @@ export default {
|
|||
warningInterval: undefined,
|
||||
forIndex: 0,
|
||||
warningData: [],
|
||||
};
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.$store.dispatch("ChangeNav", 308);
|
||||
this.$bus.$on("projectChange", (prj) => {
|
||||
this.selProject = prj;
|
||||
this.init();
|
||||
});
|
||||
this.selProject = this.$store.getters.selProject;
|
||||
this.init();
|
||||
this.$store.dispatch('ChangeNav', 308)
|
||||
this.$bus.$on('projectChange', (prj) => {
|
||||
this.selProject = prj
|
||||
this.init()
|
||||
})
|
||||
this.selProject = this.$store.getters.selProject
|
||||
this.init()
|
||||
},
|
||||
created() {},
|
||||
methods: {
|
||||
init() {
|
||||
this.certificateData = JSON.parse(
|
||||
'[{"text":"在线数量","value":5},{"text":"离线数量","value":1}]'
|
||||
);
|
||||
this.certificateData = JSON.parse('[{"text":"在线数量","value":5},{"text":"离线数量","value":1}]')
|
||||
this.listData = JSON.parse(
|
||||
'[{"createUserid":null,"ratedSpeed":"1.8","delFlag":"0","deviceId":"3223081738","deviceName":"2#-2","ratedPeopleCount":"9","entryTime":"2024-03-09 15:35:42","lastEnabledTime":"2024-03-09 15:35:42","safetyOfficerName":"马宁","maxHeight":120.5,"createTime":"2023-09-12 18:25:13","cageSize":"800*800","ratedLoad":"2000","safetyOfficerPhone":"18629159632","driverName":"张巧团","driverPhone":"17324808902","id":5,"deviceState":"0","projectId":"98"},{"createUserid":null,"ratedSpeed":"4.9","delFlag":"0","deviceId":"3223081741","deviceName":"3223081741","ratedPeopleCount":"9","entryTime":"2024-03-09 15:35:42","lastEnabledTime":"2024-03-10 10:32:49","safetyOfficerName":"马宁","maxHeight":160.2,"createTime":"2023-09-12 18:25:13","cageSize":"800*800","ratedLoad":"2000","safetyOfficerPhone":"18629159632","driverName":null,"driverPhone":null,"id":6,"deviceState":"0","projectId":"98"},{"createUserid":null,"ratedSpeed":"4.9","delFlag":"0","deviceId":"3223081748","deviceName":"3223081748","ratedPeopleCount":"9","entryTime":"2024-03-09 15:35:42","lastEnabledTime":"2024-03-10 10:46:36","safetyOfficerName":"马宁","maxHeight":187.2,"createTime":"2023-09-12 18:25:13","cageSize":"800*800","ratedLoad":"2000","safetyOfficerPhone":"18629159632","driverName":null,"driverPhone":null,"id":7,"deviceState":"0","projectId":"98"},{"createUserid":null,"ratedSpeed":"1.6","delFlag":"0","deviceId":"3223081722","deviceName":"3#-1","ratedPeopleCount":"9","entryTime":null,"lastEnabledTime":"2024-03-10 09:48:34","safetyOfficerName":"马宁","maxHeight":122.9,"createTime":"2023-09-12 18:25:13","cageSize":"800*800","ratedLoad":"2000","safetyOfficerPhone":"18629159632","driverName":"高军平","driverPhone":"15139573902","id":8,"deviceState":"0","projectId":"98"},{"createUserid":null,"ratedSpeed":"1.6","delFlag":"0","deviceId":"3223081749","deviceName":"3#-2","ratedPeopleCount":"9","entryTime":null,"lastEnabledTime":"2024-03-09 13:47:07","safetyOfficerName":"马宁","maxHeight":124.8,"createTime":"2023-09-12 18:25:13","cageSize":null,"ratedLoad":"2000","safetyOfficerPhone":"18629159632","driverName":"郭伟娟","driverPhone":"15239586568","id":9,"deviceState":"0","projectId":"98"}]'
|
||||
);
|
||||
)
|
||||
this.warningList = [
|
||||
{ warnType: "报警类型A", warnCount: 4 },
|
||||
{ warnType: "报警类型B", warnCount: 4 },
|
||||
{ warnType: "报警类型C", warnCount: 4 },
|
||||
{ warnType: "报警类型D", warnCount: 4 },
|
||||
{ warnType: "报警类型E", warnCount: 4 },
|
||||
{ warnType: "报警类型F", warnCount: 4 },
|
||||
{ warnType: "报警类型G", warnCount: 4 },
|
||||
{ warnType: "报警类型H", warnCount: 4 },
|
||||
];
|
||||
{ warnType: '报警类型A', warnCount: 4 },
|
||||
{ warnType: '报警类型B', warnCount: 4 },
|
||||
{ warnType: '报警类型C', warnCount: 4 },
|
||||
{ warnType: '报警类型D', warnCount: 4 },
|
||||
{ warnType: '报警类型E', warnCount: 4 },
|
||||
{ warnType: '报警类型F', warnCount: 4 },
|
||||
{ warnType: '报警类型G', warnCount: 4 },
|
||||
{ warnType: '报警类型H', warnCount: 4 },
|
||||
]
|
||||
this.warningData = [
|
||||
{
|
||||
warn_value: "预警A",
|
||||
images: ["images/831.jpg"],
|
||||
warn_context: "告警内容",
|
||||
warn_time: "24-02-02 14:00",
|
||||
project_abbreviation: "xxx项目",
|
||||
warn_value: '预警A',
|
||||
images: ['images/831.jpg'],
|
||||
warn_context: '告警内容',
|
||||
warn_time: '24-02-02 14:00',
|
||||
project_abbreviation: 'xxx项目',
|
||||
},
|
||||
{
|
||||
warn_value: "预警A",
|
||||
images: ["images/831.jpg"],
|
||||
warn_context: "告警内容",
|
||||
time: "24-02-02 14:00",
|
||||
project_abbreviation: "xxx项目",
|
||||
warn_value: '预警A',
|
||||
images: ['images/831.jpg'],
|
||||
warn_context: '告警内容',
|
||||
time: '24-02-02 14:00',
|
||||
project_abbreviation: 'xxx项目',
|
||||
},
|
||||
{
|
||||
warn_value: "预警A",
|
||||
images: ["images/831.jpg"],
|
||||
warn_context: "告警内容",
|
||||
time: "24-02-02 14:00",
|
||||
project_abbreviation: "xxx项目",
|
||||
warn_value: '预警A',
|
||||
images: ['images/831.jpg'],
|
||||
warn_context: '告警内容',
|
||||
time: '24-02-02 14:00',
|
||||
project_abbreviation: 'xxx项目',
|
||||
},
|
||||
];
|
||||
]
|
||||
//list 定时器
|
||||
if (this.listData.length > 0) {
|
||||
this.interval = setInterval(this.automaticRoll, 10000);
|
||||
this.interval = setInterval(this.automaticRoll, 10000)
|
||||
}
|
||||
//预警类型 定时器
|
||||
this.warningTypeInterval = setInterval(this.automaticRollType, 5000);
|
||||
this.warningTypeInterval = setInterval(this.automaticRollType, 5000)
|
||||
//正在发生 定时器
|
||||
this.warningInterval = setInterval(this.safeAutomaticRoll, 5000);
|
||||
this.index = 0;
|
||||
this.deviceId = this.listData[0].id;
|
||||
this.updateDumbwaiterValue();
|
||||
this.warningInterval = setInterval(this.safeAutomaticRoll, 5000)
|
||||
this.index = 0
|
||||
this.deviceId = this.listData[0].id
|
||||
this.updateDumbwaiterValue()
|
||||
},
|
||||
onTowerCraneList(n) {
|
||||
this.index = n;
|
||||
this.deviceId = this.listData[n].id;
|
||||
this.index = n
|
||||
this.deviceId = this.listData[n].id
|
||||
|
||||
//切换动画
|
||||
this.direction = "right";
|
||||
if (this.comName == "dumbwaiter-1") {
|
||||
this.comName = "dumbwaiter-2";
|
||||
this.direction = 'right'
|
||||
if (this.comName == 'dumbwaiter-1') {
|
||||
this.comName = 'dumbwaiter-2'
|
||||
} else {
|
||||
this.comName = "dumbwaiter-1";
|
||||
this.comName = 'dumbwaiter-1'
|
||||
}
|
||||
},
|
||||
//监控列表
|
||||
listMinMouseover() {
|
||||
clearInterval(this.interval);
|
||||
clearInterval(this.interval)
|
||||
},
|
||||
listMinMouseout() {
|
||||
this.interval = setInterval(this.automaticRoll, 10000);
|
||||
this.interval = setInterval(this.automaticRoll, 10000)
|
||||
},
|
||||
automaticRoll() {
|
||||
//切换动画
|
||||
if (this.direction == "right") {
|
||||
if (this.direction == 'right') {
|
||||
if (this.index == this.listData.length - 1) {
|
||||
this.index = 0;
|
||||
this.index = 0
|
||||
} else {
|
||||
this.index = this.index + 1;
|
||||
this.index = this.index + 1
|
||||
}
|
||||
} else {
|
||||
if (this.index == 0) {
|
||||
this.index = this.listData.length - 1;
|
||||
this.index = this.listData.length - 1
|
||||
} else {
|
||||
this.index = this.index - 1;
|
||||
this.index = this.index - 1
|
||||
}
|
||||
}
|
||||
if (this.comName == "dumbwaiter-1") {
|
||||
this.comName = "dumbwaiter-2";
|
||||
if (this.comName == 'dumbwaiter-1') {
|
||||
this.comName = 'dumbwaiter-2'
|
||||
} else {
|
||||
this.comName = "dumbwaiter-1";
|
||||
this.comName = 'dumbwaiter-1'
|
||||
}
|
||||
var height = $(".list-for").innerHeight();
|
||||
$("#listMin").animate({ scrollTop: height * this.index + "px" });
|
||||
this.deviceId = this.listData[this.index].deviceId;
|
||||
this.updateDumbwaiterValue();
|
||||
var height = $('.list-for').innerHeight()
|
||||
$('#listMin').animate({ scrollTop: height * this.index + 'px' })
|
||||
this.deviceId = this.listData[this.index].deviceId
|
||||
this.updateDumbwaiterValue()
|
||||
},
|
||||
updateDumbwaiterValue() {
|
||||
this.dumbwaiterValue = {
|
||||
|
@ -631,57 +604,54 @@ export default {
|
|||
liftingHeight: this.listData[this.index].ratedPeopleCount,
|
||||
runningSpeed: this.listData[this.index].ratedSpeed,
|
||||
enterTime: this.listData[this.index].entryTime,
|
||||
};
|
||||
}
|
||||
},
|
||||
safeTowerLeft() {
|
||||
this.direction = "left";
|
||||
this.automaticRoll();
|
||||
this.direction = 'left'
|
||||
this.automaticRoll()
|
||||
},
|
||||
safeTowerRight() {
|
||||
//切换动画
|
||||
this.direction = "right";
|
||||
this.automaticRoll();
|
||||
this.direction = 'right'
|
||||
this.automaticRoll()
|
||||
},
|
||||
//报警类型
|
||||
automaticRollType() {
|
||||
var height = $(".glr-login-number-max").innerHeight();
|
||||
if (
|
||||
$("#afootOverflowType").scrollTop() ==
|
||||
height * this.warningList.length - $("#afootOverflowType").innerHeight()
|
||||
) {
|
||||
this.warningTypeIndex = 0;
|
||||
var height = $('.glr-login-number-max').innerHeight()
|
||||
if ($('#afootOverflowType').scrollTop() == height * this.warningList.length - $('#afootOverflowType').innerHeight()) {
|
||||
this.warningTypeIndex = 0
|
||||
} else {
|
||||
this.warningTypeIndex = this.warningTypeIndex + 1;
|
||||
this.warningTypeIndex = this.warningTypeIndex + 1
|
||||
}
|
||||
$("#afootOverflowType").animate({
|
||||
scrollTop: height * this.warningTypeIndex + "px",
|
||||
});
|
||||
$('#afootOverflowType').animate({
|
||||
scrollTop: height * this.warningTypeIndex + 'px',
|
||||
})
|
||||
},
|
||||
listMinMouseoverType() {
|
||||
clearInterval(this.warningTypeInterval);
|
||||
clearInterval(this.warningTypeInterval)
|
||||
},
|
||||
listMinMouseoutType() {
|
||||
this.warningTypeInterval = setInterval(this.automaticRollType, 5000);
|
||||
this.warningTypeInterval = setInterval(this.automaticRollType, 5000)
|
||||
},
|
||||
|
||||
//正在发生
|
||||
safeAutomaticRoll() {
|
||||
var height = $(".safe-afoot-overflow").innerHeight();
|
||||
var height = $('.safe-afoot-overflow').innerHeight()
|
||||
if (this.forIndex == this.warningData.length) {
|
||||
this.forIndex = 0;
|
||||
this.forIndex = 0
|
||||
} else {
|
||||
this.forIndex = this.forIndex + 1;
|
||||
this.forIndex = this.forIndex + 1
|
||||
}
|
||||
$("#afootOverflow").animate({ scrollTop: height * this.forIndex + "px" });
|
||||
$('#afootOverflow').animate({ scrollTop: height * this.forIndex + 'px' })
|
||||
},
|
||||
warningListMinMouseover() {
|
||||
clearInterval(this.warningInterval);
|
||||
clearInterval(this.warningInterval)
|
||||
},
|
||||
warningListMinMouseout() {
|
||||
this.warningInterval = setInterval(this.safeAutomaticRoll, 5000);
|
||||
this.warningInterval = setInterval(this.safeAutomaticRoll, 5000)
|
||||
},
|
||||
},
|
||||
};
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less">
|
||||
|
|
|
@ -347,32 +347,32 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<select id="groupBYProject" parameterType="ProCostOutput" resultMap="ProCostOutputResult">
|
||||
select x.id,x.remark,x.money,y.money money2,x.month from (
|
||||
select a.dict_value id, a.dict_label remark,sum(b.money) money,count(a.id) month ,'总投资' cost_type from ( SELECT a.id,c.dict_label,c.dict_value
|
||||
FROM sur_project a,sys_dict_data c
|
||||
where a.isDel=0
|
||||
FROM pro_project_info a,sys_dict_data c
|
||||
where a.is_Del=0
|
||||
<if test="costType==1">
|
||||
and a.projectType=c.dict_value and c.dict_type='project_category'
|
||||
and a.project_type=c.dict_value and c.dict_type='project_category'
|
||||
</if>
|
||||
<if test="costType==2">
|
||||
and a.projiectLevel=c.dict_value and c.dict_type='project_level'
|
||||
and a.project_level=c.dict_value and c.dict_type='project_level'
|
||||
</if>
|
||||
<if test="id!=null and id>0"> and a.deptId = #{id}</if>
|
||||
) a
|
||||
left join (select project_id,money from sur_project_cost_output where cost_type=1) b on a.id=b.project_id
|
||||
left join (select project_id,money from pro_cost_output where cost_type=1) b on a.id=b.project_id
|
||||
group by a.dict_value,a.dict_label ) x,
|
||||
(
|
||||
select a.dict_value id, a.dict_label remark,sum(b.money) money,count(a.id) month ,'年度' cost_type from (
|
||||
SELECT a.id,c.dict_label,c.dict_value
|
||||
FROM sur_project a,sys_dict_data c
|
||||
where a.isDel=0
|
||||
FROM pro_project_info a,sys_dict_data c
|
||||
where a.is_Del=0
|
||||
<if test="costType==1">
|
||||
and a.projectType=c.dict_value and c.dict_type='project_category'
|
||||
and a.project_type=c.dict_value and c.dict_type='project_category'
|
||||
</if>
|
||||
<if test="costType==2">
|
||||
and a.projiectLevel=c.dict_value and c.dict_type='project_level'
|
||||
and a.project_level=c.dict_value and c.dict_type='project_level'
|
||||
</if>
|
||||
<if test="id!=null and id>0"> and a.deptId = #{id}</if>
|
||||
) a
|
||||
left join (select project_id,money from sur_project_cost_output where cost_type=2 and year=#{year}) b on a.id=b.project_id
|
||||
left join (select project_id,money from pro_cost_output where cost_type=2 and year=#{year}) b on a.id=b.project_id
|
||||
group by a.dict_value,a.dict_label
|
||||
)y where x.id=y.id
|
||||
</select>
|
||||
|
|
|
@ -425,7 +425,7 @@ public class AttendanceJgwTask {
|
|||
String filePath= resourcesConfig.getUploadPath();
|
||||
try {
|
||||
String name=FileUtil.getName(photo);
|
||||
return "/jgw"+FileUtils.writeBytes(buffer, filePath+"/jgw",name);
|
||||
return "/jgw/"+FileUtils.writeBytes(buffer, filePath+"/jgw",name);
|
||||
}catch (Exception ex){
|
||||
return "";
|
||||
}
|
||||
|
@ -827,7 +827,7 @@ public class AttendanceJgwTask {
|
|||
private void doSyncWorker(JSONObject jo, long startId, QuartzProjectAttendanceCfg it) {
|
||||
String appId=jo.getString("appId");
|
||||
String token=jo.getString("token");
|
||||
String projectId=jo.getString("projectId");
|
||||
String projectId=jo.getString("appProjectId");
|
||||
String path="/webapi/project/findAddWorkerByProject";
|
||||
String time = System.currentTimeMillis() + "";
|
||||
String url=host+path+"?appId=" + appId + "&tokenSign=" + token +"×tamp=" + time;
|
||||
|
@ -913,7 +913,7 @@ public class AttendanceJgwTask {
|
|||
private void doSyncProContractor(JSONObject jo, long startId, QuartzProjectAttendanceCfg it) {
|
||||
String appId=jo.getString("appId");
|
||||
String token=jo.getString("token");
|
||||
String projectId=jo.getString("projectId");
|
||||
String projectId=jo.getString("appProjectId");
|
||||
String path="/webapi/project/findProContractorByProjectId";
|
||||
String time = System.currentTimeMillis() + "";
|
||||
String url=host+path+"?appId=" + appId + "&tokenSign=" + token +"×tamp=" + time;
|
||||
|
@ -972,7 +972,7 @@ public class AttendanceJgwTask {
|
|||
private void doSyncDirectlyUnderGroup(JSONObject jo, long startId, QuartzProjectAttendanceCfg it) {
|
||||
String appId=jo.getString("appId");
|
||||
String token=jo.getString("token");
|
||||
String projectId=jo.getString("projectId");
|
||||
String projectId=jo.getString("appProjectId");
|
||||
String phone=jo.getString("phone");
|
||||
String subcontractorId=getSubcontractor(appId,token,phone);
|
||||
String path="/webapi/project/findDirectlyUnderTeam";
|
||||
|
@ -1031,7 +1031,7 @@ public class AttendanceJgwTask {
|
|||
private void doSyncGroup(JSONObject jo, long startId, QuartzProjectAttendanceCfg it) {
|
||||
String appId=jo.getString("appId");
|
||||
String token=jo.getString("token");
|
||||
String projectId=jo.getString("projectId");
|
||||
String projectId=jo.getString("appProjectId");
|
||||
String path="/webapi/project/findTeamByProjectId";
|
||||
String time = System.currentTimeMillis() + "";
|
||||
String url=host+path+"?appId=" + appId + "&tokenSign=" + token +"×tamp=" + time;
|
||||
|
@ -1134,7 +1134,7 @@ public class AttendanceJgwTask {
|
|||
private void doSyncAttendanceData(JSONObject jo, String startId, QuartzProjectAttendanceCfg it) {
|
||||
String appId=jo.getString("appId");
|
||||
String token=jo.getString("token");
|
||||
String projectId=jo.getString("projectId");
|
||||
String projectId=jo.getString("appProjectId");
|
||||
String startTime=jo.getString("startTime");
|
||||
String endTime=jo.getString("endTime");
|
||||
String path="/webapi/project/findAttendanceByProject";
|
||||
|
|
|
@ -409,6 +409,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<if test="subDeptId!=null and subDeptId>0">
|
||||
and sp.dis_dept_id=#{subDeptId}
|
||||
</if>
|
||||
<if test='proType != null and proType != "" and proType != "0"'> and sp.project_Type = #{proType}</if>
|
||||
<if test="prjIds !=null and prjIds.size()>0">
|
||||
and c.project_id in
|
||||
<foreach collection="prjIds" item="item" index="index" open="(" close=")" separator=",">
|
||||
|
@ -451,7 +452,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
|
||||
<select id="todayAttendance" parameterType="QuartzProjectAttendanceData" resultMap="SurProjectAttendanceDataResult">
|
||||
select ady.* from sur_project_attendance_data_${year} ady
|
||||
left join sur_project sp on sp.id = ady.projectId
|
||||
left join pro_project_info sp on sp.id = ady.projectId
|
||||
where sp.is_Del=0
|
||||
<if test="projectId!=null and projectId>0">
|
||||
and ady.projectId=#{projectId}
|
||||
|
@ -468,6 +469,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<if test="deptId!=null and deptId>0">
|
||||
and sp.dis_dept_id=#{deptId}
|
||||
</if>
|
||||
<if test='proType != null and proType != "" and proType != "0"'> and sp.project_Type = #{proType}</if>
|
||||
<if test="prjIds !=null and prjIds.size()>0">
|
||||
and ady.projectId in
|
||||
<foreach collection="prjIds" item="item" index="index" open="(" close=")" separator=",">
|
||||
|
@ -503,14 +505,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<if test="projectId!=null and projectId>0">
|
||||
and projectId=#{projectId}
|
||||
</if>
|
||||
and projectId in (select id from sur_project sp where sp.isDel=0
|
||||
and projectId in (select id from pro_project_info sp where sp.is_Del=0
|
||||
|
||||
<if test="deptId!=null and deptId>0">
|
||||
and sp.deptId=#{deptId}
|
||||
and sp.dis_dept_id=#{deptId}
|
||||
</if>
|
||||
<if test="attendanceTime != null and attendanceTime != ''"> and date(ady.attendance_time) =date(#{attendanceTime})</if>
|
||||
|
||||
<if test='proType != null and proType != "" and proType != "0"'> and sp.projectType = #{proType}</if>
|
||||
<if test='proType != null and proType != "" and proType != "0"'> and sp.project_type = #{proType}</if>
|
||||
<if test="prjIds !=null and prjIds.size()>0">
|
||||
and ady.projectId in
|
||||
<foreach collection="prjIds" item="item" index="index" open="(" close=")" separator=",">
|
||||
|
|
|
@ -507,7 +507,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
and c.project_id=#{projectId}
|
||||
</if>
|
||||
<if test="deptId!=null and deptId>0">
|
||||
and c.project_id in (SELECT id FROM sur_project WHERE deptid=#{deptId})
|
||||
and c.project_id in (SELECT id FROM pro_project_info WHERE dis_dept_id=#{deptId})
|
||||
</if>
|
||||
<if test="prjIds !=null and prjIds.size()>0">
|
||||
and c.project_id in
|
||||
|
@ -538,7 +538,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
and c.project_id=#{projectId}
|
||||
</if>
|
||||
<if test="deptId!=null and deptId>0">
|
||||
and c.project_id in (SELECT id FROM sur_project WHERE deptid=#{deptId})
|
||||
and c.project_id in (SELECT id FROM pro_project_info WHERE dis_dept_id=#{deptId})
|
||||
</if>
|
||||
<if test="prjIds !=null and prjIds.size()>0">
|
||||
and c.project_id in
|
||||
|
@ -595,7 +595,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<if test="deptId!=null and deptId>0">
|
||||
and sp.dis_dept_id=#{deptId}
|
||||
</if>
|
||||
|
||||
<if test='proType != null and proType != "" and proType != "0"'> and sp.project_Type = #{proType}</if>
|
||||
<if test="prjIds !=null and prjIds.size()>0">
|
||||
and b.project_id in
|
||||
<foreach collection="prjIds" item="item" index="index" open="(" close=")" separator=",">
|
||||
|
@ -641,7 +641,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<if test="deptId!=null and deptId>0">
|
||||
and p.dis_dept_id=#{deptId}
|
||||
</if>
|
||||
<if test='proType != null and proType != "" and proType != "0"'> and p.projectType = #{proType}</if>
|
||||
<if test='proType != null and proType != "" and proType != "0"'> and p.project_Type = #{proType}</if>
|
||||
<if test="prjIds !=null and prjIds.size()>0">
|
||||
and b.project_id in
|
||||
<foreach collection="prjIds" item="item" index="index" open="(" close=")" separator=",">
|
||||
|
@ -691,6 +691,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<if test="deptId!=null and deptId>0">
|
||||
and p.dis_dept_id=#{deptId}
|
||||
</if>
|
||||
<if test='proType != null and proType != "" and proType != "0"'> and p.project_Type = #{proType}</if>
|
||||
<if test="prjIds !=null and prjIds.size()>0">
|
||||
and b.project_id in
|
||||
<foreach collection="prjIds" item="item" index="index" open="(" close=")" separator=",">
|
||||
|
@ -726,6 +727,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<if test="deptId!=null and deptId>0">
|
||||
and sp.dis_dept_id=#{deptId}
|
||||
</if>
|
||||
<if test='proType != null and proType != "" and proType != "0"'> and sp.project_Type = #{proType}</if>
|
||||
<if test="prjIds !=null and prjIds.size()>0">
|
||||
and b.project_id in
|
||||
<foreach collection="prjIds" item="item" index="index" open="(" close=")" separator=",">
|
||||
|
|
|
@ -24,8 +24,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
</resultMap>
|
||||
|
||||
<sql id="selectSysApplyConfigVo">
|
||||
select sac.id, sac.cfg_type, sac.cfg_id, sac.app_id, sac.public_key, sac.private_key, sac.project_id, sp.projectName, sac.dept_id, sd.dept_name as deptName, sac.is_del, sac.create_by, sac.create_time, sac.update_by, sac.update_time, sac.remark from sys_apply_config sac
|
||||
left join sur_project sp on sac.project_id = sp.id
|
||||
select sac.id, sac.cfg_type, sac.cfg_id, sac.app_id, sac.public_key, sac.private_key, sac.project_id, sp.project_name, sac.dept_id, sd.dept_name as deptName, sac.is_del, sac.create_by, sac.create_time, sac.update_by, sac.update_time, sac.remark from sys_apply_config sac
|
||||
left join pro_project_info sp on sac.project_id = sp.id
|
||||
left join sys_dept sd on sac.dept_id = sd.dept_id
|
||||
</sql>
|
||||
|
||||
|
@ -35,7 +35,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<if test="cfgId != null "> and sac.cfg_id = #{cfgId}</if>
|
||||
<if test="cfgType != null "> and sac.cfg_type = #{cfgType}</if>
|
||||
<if test="appId != null "> and sac.app_id like concat('%', #{appId}, '%')</if>
|
||||
<if test="projectName != null "> and sp.projectName like concat('%', #{projectName}, '%')</if>
|
||||
<if test="projectName != null "> and sp.project_name like concat('%', #{projectName}, '%')</if>
|
||||
<if test="deptName != null "> and sd.dept_name like concat('%', #{deptName}, '%')</if>
|
||||
<if test="isDel != null and isDel != ''"> and sac.is_del = #{isDel}</if>
|
||||
</where>
|
||||
|
|
|
@ -89,14 +89,14 @@
|
|||
|
||||
<!-- 添加或修改考勤配置对话框 -->
|
||||
<el-dialog :title="title" v-model="open" width="800px" append-to-body :close-on-click-modal="false" :close-on-press-escape="false">
|
||||
<el-form ref="attendance_cfgRef" :model="form" :rules="rules" label-width="100px" :key="data.formKey">
|
||||
<el-form ref="attendance_cfgRef" :model="form" :rules="rules" label-width="120px" :key="data.formKey">
|
||||
<el-form-item label="所属项目" prop="projectId">
|
||||
<el-select :disabled="data.currentPrjId != ''||data.mode=='edit'" v-model="form.projectId" placeholder="请选择项目">
|
||||
<el-select :disabled="data.currentPrjId != ''||data.mode=='edit'" v-model="form.projectId" placeholder="请选择项目" style="width:300px;">
|
||||
<el-option v-for="prj in data.projects" :key="prj.id" :label="prj.projectName" :value="prj.id"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="考勤厂商" prop="vendorsCode">
|
||||
<el-select v-model="form.vendorsCode" placeholder="请选择厂商" @change="vendorsCodeChange">
|
||||
<el-select v-model="form.vendorsCode" placeholder="请选择厂商" @change="vendorsCodeChange" :disabled="data.mode=='edit'">
|
||||
<el-option v-for="dict in attendance_vendors" :key="dict.value" :label="dict.label" :value="dict.value"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
@ -123,6 +123,12 @@
|
|||
</el-form-item>
|
||||
</template>
|
||||
|
||||
<template v-if="form.vendorsCode=='jgw'">
|
||||
<el-form-item label="项目经理手机" prop="phone">
|
||||
<el-input v-model="form.phone" placeholder="项目经理手机" clearable />
|
||||
</el-form-item>
|
||||
</template>
|
||||
|
||||
<el-form-item label="已启用" prop="enabled">
|
||||
<el-switch v-model="form.enabled" :active-value="1" :inactive-value="0" />
|
||||
</el-form-item>
|
||||
|
|
Loading…
Reference in New Issue