yangyin
2024-06-17 2099c6a610c4cb8134fb845c5cc676f9feb92290
新增批量处理报警列表
已修改6个文件
355 ■■■■ 文件已修改
app.js 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
other/alarm/index.js 92 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
other/alarm/index.wxml 90 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
other/alarm/index.wxss 130 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
utils/api.js 35 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
workDesktop/report/index.wxss 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
app.js
@@ -60,9 +60,9 @@
          return;
        }
        if (result.Data.List == null && result.Data.Total == 0) {
          wx.showModal({
            title: '暂无报警数据',
          });
          // wx.showModal({
          //   title: '暂无报警数据1',
          // });
          return
        }
        that.getMonitorDialog()
other/alarm/index.js
@@ -15,6 +15,9 @@
    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,
@@ -26,7 +29,22 @@
    }, //排序
    listFinish: [],
    bottomStatus: false, //是否到底部
    scrollTop: 0
    scrollTop: 0,
    alarmTypeList:[{
      ID:1,
      Name:'越上限'
    },
    {
      ID:2,
      Name:'越下限'
    },
    {
      ID:3,
      Name:'非合理区间'
    }],//报警类型
    alarmTypeValue:0,
    alarmLevelList:[],
    alarmLevelValue:1,
  },
  /**
@@ -36,6 +54,7 @@
    wx.setNavigationBarTitle({
      title: '报警列表',
    });
    this.getAlarmLevelList()
    this.getAlarmList()
  },
@@ -211,6 +230,77 @@
    });
    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
@@ -1,6 +1,5 @@
<!--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>
@@ -9,7 +8,6 @@
      <span class="sortText">{{sort.text}}</span>
    </view>
  </view>
  <view class="screen" wx:if="{{sort.text=='收起'}}">
    <view class="screen_li">
      <view class="screen_li_left">
@@ -29,29 +27,79 @@
        </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>
other/alarm/index.wxss
@@ -34,12 +34,6 @@
  top: 3rem;
}
/* 20191227 ywg */
.warp_scroll {
  width: 100%;
  border-radius: 50px;
  margin: 0px auto;
}
.list:nth-child(1) {
  border: 0;
@@ -169,6 +163,7 @@
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative
}
.sortText,.jilu,.daoxu{
  padding: 5rpx;
@@ -176,6 +171,96 @@
}
.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;
@@ -224,7 +309,12 @@
.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;
}
@@ -242,8 +332,8 @@
  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){
@@ -265,6 +355,13 @@
  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%;
@@ -284,6 +381,16 @@
  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;
@@ -294,6 +401,11 @@
  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{
utils/api.js
@@ -81,18 +81,35 @@
    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)
    },
workDesktop/report/index.wxss
@@ -173,7 +173,7 @@
.pick-view__group {
  width: 96%;
  height: 450rpx;
  height: 150rpx;
}
/* 20191226 */