doum
5 小时以前 12d71ee7f050b981d584668f6ca70794d2c92a44
最新版本541200007
已修改5个文件
56 ■■■■■ 文件已修改
admin/src/api/business/warningRule.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/components/business/OperaWarningRuleWindow.vue 25 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/WarningRuleCloudController.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/WarningRuleService.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/WarningRuleServiceImpl.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/api/business/warningRule.js
@@ -20,7 +20,7 @@
  return request.post('/visitsAdmin/cloudService/business/warningRule/create', data)
}
export function updateStatus (data) {
  return request.post('/visitsAdmin/cloudService/business/warning/updateStatus', data)
  return request.post('/visitsAdmin/cloudService/business/warningRule/updateStatus', data)
}
// 修改
export function updateById (data) {
admin/src/components/business/OperaWarningRuleWindow.vue
@@ -37,7 +37,9 @@
        </el-form-item>
        <el-button type="danger" style="margin-left: 10px;height: 32px; " @click="delDo(index)" v-if="index>0 || form.detailList.length>1">删除</el-button>
      </div>
      <el-button type="primary" style="margin-left: 10px;margin-bottom: 20px;" @click="addDo">增加规则</el-button>
      <el-form-item label="" prop="detailList" style="width: 150px">
       <el-button type="primary" style="margin-left: 10px;margin-bottom: 20px;" @click="addDo">增加规则</el-button>
      </el-form-item>
      <el-form-item label="状态" prop="status">
        <el-radio-group v-model="form.status">
          <el-radio :label="0" :value="0">禁用</el-radio>
@@ -47,7 +49,7 @@
      <el-form-item label="发生间隔时间(秒)" prop="intervalSec">
        <el-input type="number" v-model="form.intervalSec" placeholder="请输入多规则间隔时间(秒)" v-trim/>
      </el-form-item>
      <el-form-item label="钉钉通知" prop="memberNotice"  style="display:inline-block;width: 50%;">
      <el-form-item label="钉钉通知" prop="memberNotice"   >
        <el-switch    style="margin-right:30px;width:100px"    v-model="form.memberNotice" :active-value="1"  :inactive-value="0" active-text="开" inactive-text="关"></el-switch>
      </el-form-item>
      <el-form-item label="选择钉钉通知人员" v-if="form.memberNotice ==1" prop="memberIds" style="margin-bottom: 30px" >
@@ -56,7 +58,7 @@
          </el-option>
        </el-select>
      </el-form-item>
      <el-form-item label="广播通知" prop="deviceNotice"  style="display:inline-block;width: 50%;" >
      <el-form-item label="广播通知" prop="deviceNotice"    >
        <el-switch    style="margin-right:30px;width: 100px"    v-model="form.deviceNotice" :active-value="1"  :inactive-value="0" active-text="开" inactive-text="关">></el-switch>
      </el-form-item>
      <el-form-item label="选择播报广播" v-if="form.deviceNotice ==1"  prop="deviceIds" style="margin-bottom: 30px" >
@@ -78,11 +80,27 @@
import { allList } from '@/api/business/member'
import { allList as allDveiceList } from '@/api/business/device'
import { allList as warningList, regionList } from '@/api/business/warning'
import { validIdCardNo } from '@/utils/form'
export default {
  name: 'OperaWarningRuleWindow',
  extends: BaseOpera,
  components: { GlobalWindow },
  data () {
    var validIdDetals = (rule, value, callback) => {
      if (this.form.detailList == null || this.form.detailList.length==0) {
        callback(new Error('请配置规则'))
        return
      }
      console.log("1111111111111111111111",this.form.detailList)
      for (let i = 0; i < this.form.detailList.length; i++) {
        var item = this.form.detailList[i]
        if (!item.warningId || item.warningId == null) {
          callback(new Error('请正确配置规则'))
          return
        }
      }
      callback()
    }
    return {
      // 表单数据
      form: {
@@ -105,6 +123,7 @@
      regionList: [],
      // 验证规则
      rules: {
        detailList: [{ required: true, validator: validIdDetals, message: '请正确配置规则', tigger: 'blur' }],
        memberNotice: [{ required: true, message: '请选择钉钉通知' }],
        deviceNotice: [{ required: true, message: '请选择是否广播通知' }],
        deviceIds: [{ required: true, message: '请选择播报广播', tigger: 'blur' }],
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/WarningRuleCloudController.java
@@ -5,6 +5,7 @@
import com.doumee.core.annotation.excel.ExcelExporter;
import com.doumee.core.annotation.pr.PreventRepeat;
import com.doumee.core.utils.Constants;
import com.doumee.dao.business.model.Warning;
import com.doumee.dao.business.model.WarningRule;
import com.doumee.service.business.WarningRuleService;
import com.doumee.service.business.third.model.ApiResponse;
@@ -90,4 +91,12 @@
    public ApiResponse findById(@PathVariable Integer id, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
        return ApiResponse.success(warningRuleService.findById(id));
    }
    @ApiOperation("根据ID 禁启用  ")
    @PostMapping("/updateStatus")
    @CloudRequiredPermission("business:warningrule:update")
    public ApiResponse updateStatus(@RequestBody WarningRule param, @RequestHeader(Constants.HEADER_USER_TOKEN) String token){
        param.setLoginUserInfo(this.getLoginUser(token));
        warningRuleService.updateStatus(param);
        return ApiResponse.success(null);
    }
}
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/WarningRuleService.java
@@ -1,5 +1,6 @@
package com.doumee.service.business;
import com.doumee.dao.business.model.Warning;
import com.doumee.service.business.third.model.LoginUserInfo;
import com.doumee.service.business.third.model.PageData;
import com.doumee.service.business.third.model.PageWrap;
@@ -95,4 +96,6 @@
     * @return long
     */
    long count(WarningRule warningRule);
    void updateStatus(WarningRule param);
}
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/WarningRuleServiceImpl.java
@@ -3,6 +3,8 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.doumee.core.constants.ResponseStatus;
import com.doumee.core.exception.BusinessException;
import com.doumee.core.haikang.model.param.request.EventSubRequest;
import com.doumee.core.haikang.service.HKService;
import com.doumee.core.utils.Constants;
import com.doumee.dao.business.DeviceMapper;
import com.doumee.dao.business.WarningMapper;
@@ -368,4 +370,19 @@
        QueryWrapper<WarningRule> wrapper = new QueryWrapper<>(warningRule);
        return warningRuleMapper.selectCount(wrapper);
    }
    @Override
    public  void updateStatus(WarningRule param) {
        WarningRule model = warningRuleMapper.selectById(param.getId());
        if (model==null || Constants.equalsInteger(model.getIsdeleted(), Constants.ONE)) {
            throw new BusinessException(ResponseStatus.DATA_EMPTY);
        }
        if(Constants.equalsInteger(model.getStatus(),param.getStatus())){
            return;
        }
        model.setStatus(param.getStatus());
        model.setEditDate(new Date());
        model.setEditor(param.getLoginUserInfo().getId());
        warningRuleMapper.updateById(model);
    }
}