| | |
| | | return; |
| | | } |
| | | if (result.Data.List == null && result.Data.Total == 0) { |
| | | wx.showModal({ |
| | | title: '暂无报警数据', |
| | | }); |
| | | // wx.showModal({ |
| | | // title: '暂无报警数据1', |
| | | // }); |
| | | return |
| | | } |
| | | that.getMonitorDialog() |
| | |
| | | startAlarmDate: util.formatDay(util.GetBeforeDate(30)), //开始时间 |
| | | endAlarmDate: util.formatDay(util.GetNextDate(new Date(), 1)), //结束时间 |
| | | currentDate: util.formatDay(util.GetNextDate(new Date(), 1)), //结束时间 |
| | | batchStartAlarmDate: util.formatDay(util.GetBeforeDate(7)), //开始时间 (批量) |
| | | batchEndAlarmDate: util.formatDay(util.GetNextDate(new Date(), 1)), //结束时间(批量) |
| | | batchCurrentDate: util.formatDay(util.GetNextDate(new Date(), 1)), //结束时间(批量) |
| | | lastRefreshTime: g_refreshTime, //秒 |
| | | intervalRefreshTime: null, |
| | | PageIndex: 1, |
| | |
| | | }, //排序 |
| | | listFinish: [], |
| | | bottomStatus: false, //是否到底部 |
| | | scrollTop: 0 |
| | | scrollTop: 0, |
| | | alarmTypeList:[{ |
| | | ID:1, |
| | | Name:'越上限' |
| | | }, |
| | | { |
| | | ID:2, |
| | | Name:'越下限' |
| | | }, |
| | | { |
| | | ID:3, |
| | | Name:'非合理区间' |
| | | }],//报警类型 |
| | | alarmTypeValue:0, |
| | | alarmLevelList:[], |
| | | alarmLevelValue:1, |
| | | }, |
| | | |
| | | /** |
| | |
| | | wx.setNavigationBarTitle({ |
| | | title: '报警列表', |
| | | }); |
| | | this.getAlarmLevelList() |
| | | this.getAlarmList() |
| | | }, |
| | | |
| | |
| | | }); |
| | | this.getAlarmList() |
| | | }, |
| | | //批量选择时间 |
| | | //获取报警等级 |
| | | getAlarmLevelList(){ |
| | | Request({ |
| | | url: Constant.BASE_SERVER_URL + 'Basic/Sys/Alarm/Level/Std/GetAll@V1.0', |
| | | method: 'GET', |
| | | success: (res) => { |
| | | var result = res.data |
| | | this.setData({ |
| | | alarmLevelList:result.Data |
| | | }) |
| | | |
| | | } |
| | | }) |
| | | }, |
| | | alarmTypeChange(e){ |
| | | var alarmTypeValueSelect=e.detail.value |
| | | this.setData({ |
| | | alarmTypeValue:Number(alarmTypeValueSelect), |
| | | }) |
| | | }, |
| | | alarmLevelChange(e){ |
| | | var alarmLevelValueSelect=e.detail.value |
| | | this.setData({ |
| | | alarmLevelValue:Number(alarmLevelValueSelect) |
| | | }) |
| | | }, |
| | | /*** 弹窗*/ |
| | | showModalInput: function () { |
| | | this.setData({ |
| | | showModal: true |
| | | }) |
| | | }, |
| | | /*** 弹出框蒙层截断touchmove事件*/ |
| | | preventTouchMove: function () {}, |
| | | /*** 隐藏模态对话框 */ |
| | | hideModal: function () { |
| | | this.setData({ |
| | | showModal: false |
| | | }) |
| | | }, |
| | | /*** 对话框取消按钮点击事件*/ |
| | | onCancel: function () { |
| | | this.hideModal() |
| | | }, |
| | | //批量处理删除操作 |
| | | submitBatchFormValue() { |
| | | let param = { |
| | | AlarmType: this.data.alarmTypeValue, |
| | | AlarmLevel: this.data.alarmLevelValue, |
| | | FromAlarmStatus: 0, |
| | | ToAlarmStatus: 1, |
| | | StartTime: this.data.batchStartAlarmDate, |
| | | EndTime: this.data.batchEndAlarmDate, |
| | | }; |
| | | Request({ |
| | | url: Constant.BASE_SERVER_URL + 'Monitor/Value/Alarm/Record/UpdateFluzzyAlarmStatus@V1.0', |
| | | method: 'PUT', |
| | | data: param, |
| | | success: (res) => { |
| | | var result = res.data |
| | | if (result.Data) { |
| | | wx.showToast({ |
| | | title: '处理成功', |
| | | duration: 2000 |
| | | }) |
| | | this.getAlarmList() |
| | | } |
| | | } |
| | | }) |
| | | }, |
| | | /** |
| | | * 生命周期函数--监听页面卸载 |
| | | */ |
| | |
| | | <!--other/alarm/index.wxml--> |
| | | <view class='tui-list-box-raduis'> |
| | | <view class="view_header"> |
| | | <view class="view_header"> |
| | | <view class="jilu">共 |
| | | <span style="color:red;">{{alarmTotal}}</span>条记录 |
| | | </view> |
| | |
| | | <span class="sortText">{{sort.text}}</span> |
| | | </view> |
| | | </view> |
| | | |
| | | <view class="screen" wx:if="{{sort.text=='收起'}}"> |
| | | <view class="screen_li"> |
| | | <view class="screen_li_left"> |
| | |
| | | </picker> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | <scroll-view class="sc" scroll-y="true" style="padding-top: 40rpx;height: 100%;" scroll-top="{{scrollTop}}" bindscrolltolower="onReachBottom"> |
| | | <view class="tui-menu-list tui-youjiantou" wx:for="{{alarmList}}" wx:for-item="alarm_item" wx:for-index="node_index" wx:key="node_index"> |
| | | <view> |
| | | <block> |
| | | <view class="block_list" style="height:130rpx;" data-meter-name="{{alarm_item.Name}}" data-meter_node_id="{{alarm_item.ID}}"> |
| | | <view class="block_list_center"> |
| | | <view class="beng_name" style="justify-content: space-between; align-items: center;"> |
| | | <view class="text-blue light" style="margin-right:20rpx;font-size:22rpx;"> |
| | | 报警时间 {{alarm_item.AlarmTime?alarm_item.AlarmTime:''}} |
| | | </view> |
| | | <view> |
| | | <text bindtap="progressAlarm" class="text-orange light" style="margin-right:13rpx" data-alarmitem="{{alarm_item}}">处理</text> |
| | | </view> |
| | | </view> |
| | | <scroll-view class="warp_scroll" scroll-y scroll-top="{{scrollTop}}" bindscrolltolower="onReachBottom"> |
| | | <view class="list" wx:for="{{alarmList}}" wx:for-item="alarm_item" wx:for-index="node_index" wx:key="node_index"> |
| | | <view> |
| | | <block> |
| | | <view class="block_list" style="height:130rpx;" data-meter-name="{{alarm_item.Name}}" data-meter_node_id="{{alarm_item.ID}}"> |
| | | <view class="block_list_center"> |
| | | <view class="beng_name" style="justify-content: space-between; align-items: center;"> |
| | | <view class="text-blue light" style="margin-right:20rpx;font-size:22rpx;"> |
| | | 报警时间 {{alarm_item.AlarmTime?alarm_item.AlarmTime:''}} |
| | | </view> |
| | | <view class="beng_dizi text-grey"> |
| | | <view>{{alarm_item.Content}}</view> |
| | | <view> |
| | | <text bindtap="progressAlarm" class="text-orange light" style="margin-right:13rpx" data-alarmitem="{{alarm_item}}">处理</text> |
| | | </view> |
| | | </view> |
| | | <view class="beng_dizi text-grey"> |
| | | <view>{{alarm_item.Content}}</view> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | |
| | | </block> |
| | | </block> |
| | | </view> |
| | | |
| | | </view> |
| | | </scroll-view> |
| | | <icon class="setIcon_pos iconfont icon-wancheng2" bindtap="showModalInput"></icon> |
| | | <!--弹窗--> |
| | | <view class="modal-mask" bindtap="hideModal" catchtouchmove="preventTouchMove" wx:if="{{showModal}}"></view> |
| | | <view class="modal-dialog" wx:if="{{showModal}}"> |
| | | <view class="modal-title">批量处理</view> |
| | | <view class="screen"> |
| | | <view class="screen_li"> |
| | | <view class="screen_li_left"> |
| | | 日期: |
| | | </view> |
| | | <view class="screen_li_right"> |
| | | <picker mode="date" value="{{startAlarmDate}}" end="{{endAlarmDate}}" bindchange="changeDateStart"> |
| | | <view class="tui-picker-detail"> |
| | | {{startAlarmDate}} |
| | | </view> |
| | | </picker> |
| | | <view class="screen_li_right_cen2">~</view> |
| | | <picker mode="date" value="{{endAlarmDate}}" end="{{currentDate}}" bindchange="changeDateEnd"> |
| | | <view class="tui-picker-detail"> |
| | | {{endAlarmDate}} |
| | | </view> |
| | | </picker> |
| | | </view> |
| | | </view> |
| | | </scroll-view> |
| | | <view class="screen_li"> |
| | | <view class="screen_li_left"> |
| | | 报警类型: |
| | | </view> |
| | | <view class="screen_batch_li_right"> |
| | | <picker class="pick-view__group" bindchange="alarmTypeChange" range-key="Name" value="{{alarmTypeValue}}" range="{{alarmTypeList}}"> |
| | | <view class="picker-item">{{alarmTypeList[alarmTypeValue].Name}}</view> |
| | | </picker> |
| | | </view> |
| | | </view> |
| | | <view class="screen_li"> |
| | | <view class="screen_li_left"> |
| | | 报警等级: |
| | | </view> |
| | | <view class="screen_batch_li_right"> |
| | | <picker class="pick-view__group" bindchange="alarmLevelChange" range-key="Name" value="{{alarmLevelValue}}" range="{{alarmLevelList}}"> |
| | | <view class="picker-item">{{alarmLevelList[alarmLevelValue].Name}}</view> |
| | | </picker> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | <view class="modal-footer"> |
| | | <view class="btn-cancel" bindtap="onCancel" data-status="cancel">取消</view> |
| | | <view class="btn-confirm" bindtap="submitBatchFormValue" data-status="confirm">确定</view> |
| | | </view> |
| | | </view> |
| | |
| | | top: 3rem; |
| | | } |
| | | |
| | | /* 20191227 ywg */ |
| | | .warp_scroll { |
| | | width: 100%; |
| | | border-radius: 50px; |
| | | margin: 0px auto; |
| | | } |
| | | |
| | | .list:nth-child(1) { |
| | | border: 0; |
| | |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: space-between; |
| | | position: relative |
| | | } |
| | | .sortText,.jilu,.daoxu{ |
| | | padding: 5rpx; |
| | |
| | | } |
| | | .block_list_center { |
| | | width: 100%; |
| | | } |
| | | .setIcon_pos{ |
| | | position: fixed; |
| | | width: 80rpx; |
| | | height: 80rpx; |
| | | bottom: 20px; |
| | | right: 30px; |
| | | font-size: 80rpx !important; |
| | | color: #16b5cb; |
| | | } |
| | | .modal-mask { |
| | | width: 100%; |
| | | height: 100%; |
| | | position: fixed; |
| | | top: 0; |
| | | left: 0; |
| | | background: #000; |
| | | opacity: 0.5; |
| | | overflow: hidden; |
| | | z-index: 9000; |
| | | color: #fff; |
| | | } |
| | | |
| | | .modal-dialog { |
| | | width: 540rpx; |
| | | overflow: hidden; |
| | | position: fixed; |
| | | top: 30%; |
| | | left: 0; |
| | | z-index: 9999; |
| | | background: #fff; |
| | | margin: -180rpx 105rpx; |
| | | border-radius: 36rpx; |
| | | } |
| | | |
| | | .modal-title { |
| | | padding-top: 50rpx; |
| | | font-size: 36rpx; |
| | | color: #030303; |
| | | text-align: center; |
| | | } |
| | | |
| | | .modal-content { |
| | | padding: 50rpx 32rpx; |
| | | } |
| | | |
| | | .modal-input { |
| | | display: flex; |
| | | background: #fff; |
| | | /* border-bottom: 2rpx solid #ddd; */ |
| | | border-radius: 4rpx; |
| | | font-size: 28rpx; |
| | | } |
| | | |
| | | |
| | | .textarea { |
| | | width: 100%; |
| | | min-height: 150rpx; |
| | | font-size: 28rpx; |
| | | line-height: 28rpx; |
| | | padding: 0 20rpx; |
| | | box-sizing: border-box; |
| | | color: #333; |
| | | border: 2rpx solid #ddd; |
| | | } |
| | | |
| | | input-holder { |
| | | color: #666; |
| | | font-size: 28rpx; |
| | | } |
| | | |
| | | .modal-footer { |
| | | display: flex; |
| | | flex-direction: row; |
| | | height: 86rpx; |
| | | border-top: 1px solid #dedede; |
| | | font-size: 34rpx; |
| | | line-height: 86rpx; |
| | | } |
| | | |
| | | .btn-cancel { |
| | | width: 50%; |
| | | color: #666; |
| | | text-align: center; |
| | | border-right: 1px solid #dedede; |
| | | } |
| | | .btn-confirm { |
| | | width: 50%; |
| | | color: #16b5cb; |
| | | text-align: center; |
| | | } |
| | | .monitor_des{ |
| | | font-size: 26rpx; |
| | |
| | | .block_list_url>view>icon { |
| | | margin-right: 5rpx; |
| | | } |
| | | |
| | | .warp_scroll{ |
| | | width: 100%; |
| | | /* min-height:92vh; */ |
| | | margin:3px auto; |
| | | background: #fff; |
| | | } |
| | | /* .block_list_url>view:nth-child(1){ |
| | | background-color: #16b5cb; |
| | | } |
| | |
| | | font-size: 30rpx; |
| | | } |
| | | .screen>.screen_li{ |
| | | width: 100vh; |
| | | min-height: 50rpx; |
| | | width: 100vm; |
| | | min-height: 70rpx; |
| | | border-top: 1px solid #f4f4f4; |
| | | } |
| | | .screen>.screen_li:nth-child(1){ |
| | |
| | | align-items: center; |
| | | justify-content: center; |
| | | } |
| | | .screen_batch_li_right{ |
| | | width: 50vw; |
| | | height: 100%; |
| | | justify-content:flex-start; |
| | | color: #16b5cb; |
| | | padding: 0rpx 20rpx; |
| | | } |
| | | .screen_li_right{ |
| | | width: 80vw; |
| | | height: 100%; |
| | |
| | | justify-content: center; |
| | | border-radius: 5px; |
| | | } |
| | | .pick-view__group { |
| | | width: 96%; |
| | | height: 70rpx; |
| | | } |
| | | .picker-item { |
| | | line-height: 70rpx; |
| | | margin-left: 5rpx; |
| | | margin-right: 5rpx; |
| | | text-align: center; |
| | | } |
| | | .screen_li_right>picker{ |
| | | padding: 10rpx; |
| | | border-radius: 5px; |
| | |
| | | display: flex; |
| | | align-items: center; |
| | | } |
| | | .screen_li_right>.screen_li_right_cen2{ |
| | | margin: 5rpx 5rpx; |
| | | display: flex; |
| | | align-items: center; |
| | | } |
| | | .screen_btn, |
| | | .screen,.screen_li_right>.applicant,.applicant>.applicant_btn, |
| | | .screen>.screen_li,.screen_li_left,.screen_li_right{ |
| | |
| | | header: requestParam.header, |
| | | success: res => { |
| | | let result = res.data |
| | | if (result.data != undefined && result.data == 401) { |
| | | if (result.Data != undefined && result.Data == 401) { |
| | | RefreshToken() |
| | | return |
| | | } |
| | | if (result.code && result.code != 0) { |
| | | wx.showToast({ |
| | | title: result.message, |
| | | icon: 'error', |
| | | duration: 1500 |
| | | }) |
| | | RefreshToken() |
| | | return |
| | | if (result.Code && result.Code != 0) { |
| | | if(result.Code==-3){ |
| | | wx.showModal({ |
| | | title: result.Message, |
| | | complete: (res) => { |
| | | if (res.cancel) { |
| | | |
| | | } |
| | | |
| | | if (res.confirm) { |
| | | |
| | | } |
| | | } |
| | | }) |
| | | |
| | | } |
| | | else{ |
| | | wx.showToast({ |
| | | title: result.Message, |
| | | icon: 'error', |
| | | duration: 1500 |
| | | }) |
| | | RefreshToken() |
| | | return |
| | | } |
| | | } |
| | | requestParam.success(res) |
| | | }, |
| | |
| | | |
| | | .pick-view__group { |
| | | width: 96%; |
| | | height: 450rpx; |
| | | height: 150rpx; |
| | | } |
| | | |
| | | /* 20191226 */ |