doum
14 小时以前 5083abb65d2a6e43603ee11575b0e233b00a085c
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/WarningRuleServiceImpl.java
@@ -4,6 +4,7 @@
import com.doumee.core.constants.ResponseStatus;
import com.doumee.core.exception.BusinessException;
import com.doumee.core.utils.Constants;
import com.doumee.dao.business.DeviceMapper;
import com.doumee.dao.business.WarningMapper;
import com.doumee.dao.business.WarningRuleDetailMapper;
import com.doumee.dao.business.dao.MemberMapper;
@@ -45,6 +46,8 @@
    @Autowired
    private MemberMapper memberMapper;
    @Autowired
    private DeviceMapper deviceMapper;
    @Autowired
    private WarningRuleDetailMapper warningRuleDetailMapper;
    @Override
@@ -82,7 +85,8 @@
            detail.setEditor(warning.getCreator());
        }
        warning.setMemberNames( initMemberInfo(warning));
         initMemberInfo(warning);
        initDeviceInfo(warning);
        warning.setTitle(title);
        warningRuleMapper.insert(warning);
        for(WarningRuleDetail detail : warning.getDetailList()){
@@ -93,6 +97,9 @@
    }
    private String initMemberInfo(WarningRule warning) {
        if(Constants.equalsInteger(warning.getMemberNotice(),Constants.ZERO)){
            return null;
        }
        String[] members = warning.getMemberIds().split(",");
        List<Integer> mIds = new ArrayList<>();
        for(String str :members){
@@ -122,6 +129,39 @@
        warning.setMemberIds(memberIds);
        warning.setMemberNames(memberNames);
        return memberNames;
    }
    private String initDeviceInfo(WarningRule warning) {
        if(Constants.equalsInteger(warning.getDeviceNotice(),Constants.ZERO)){
            return null;
        }
        String[] ids = warning.getDeviceIds().split(",");
        List<Integer> mIds = new ArrayList<>();
        for(String str :ids){
            try {
                mIds.add(Integer.parseInt(str));
            }catch (Exception e){
            }
        }
        if(mIds.size() ==0){
            throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"请选择正确的设备信息");
        }
        List<Device> list = deviceMapper.selectJoinList(Device.class,new MPJLambdaWrapper<Device>()
                .selectAll(Device.class )
                .eq(Device::getIsdeleted,Constants.ZERO )
                .eq(Device::getType,Constants.FOUR )
                .in(Device::getId,mIds ));
        if(list == null || list.size() ==0){
            throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"请选择正确的设备信息!");
        }
        String dids = "";
        String names = "";
        for(Device m : list){
            dids += (StringUtils.isNotBlank(dids)?",":"")+m.getId();
            names += StringUtils.defaultString(m.getName(),"") +"; ";
        }
        warning.setDeviceIds(dids);
        warning.setDeviceNames(names);
        return names;
    }
    @Override
@@ -197,7 +237,8 @@
            detail.setEditDate(warning.getCreateDate());
            detail.setEditor(warning.getCreator());
        }
        warning.setMemberNames( initMemberInfo(warning));
        initMemberInfo(warning);
        initDeviceInfo(warning);
        warning.setTitle(title);
        warningRuleMapper.updateById(warning);
        for(WarningRuleDetail detail : warning.getDetailList()){
@@ -252,6 +293,7 @@
        queryWrapper.selectAll(WarningRule.class );
        queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getMemberNames()),WarningRule::getMemberNames, pageWrap.getModel().getMemberNames());
        queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getTitle()),WarningRule::getTitle, pageWrap.getModel().getTitle());
        queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getDeviceNames()),WarningRule::getDeviceNames, pageWrap.getModel().getDeviceNames());
        if (pageWrap.getModel().getId() != null) {
            queryWrapper.eq(WarningRule::getId, pageWrap.getModel().getId());
@@ -273,6 +315,12 @@
        if (pageWrap.getModel().getIsdeleted() != null) {
            queryWrapper.eq(WarningRule::getIsdeleted, pageWrap.getModel().getIsdeleted());
        }
        if (pageWrap.getModel().getMemberNotice() != null) {
            queryWrapper.eq(WarningRule::getMemberNotice, pageWrap.getModel().getMemberNotice());
        }
        if (pageWrap.getModel().getDeviceNotice() != null) {
            queryWrapper.eq(WarningRule::getDeviceNotice, pageWrap.getModel().getDeviceNotice());
        }
        if (pageWrap.getModel().getInfo() != null) {
            queryWrapper.eq(WarningRule::getInfo, pageWrap.getModel().getInfo());
        }