2021与蓝度共同重构项目,服务端
liuhaonan
2022-11-04 e55c8b0a92eb9715edd90c31dfd4de51a47b588b
ximon-admin/src/main/java/com/sandu/ximon/admin/service/RemoteUpdateService.java
@@ -1,7 +1,10 @@
package com.sandu.ximon.admin.service;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.sandu.common.execption.BusinessException;
import com.sandu.common.service.impl.BaseServiceImpl;
import com.sandu.common.util.SpringContextHolder;
import com.sandu.ximon.admin.dto.RemoteFileDto;
import com.sandu.ximon.admin.dto.RemoteUpdateTypeDto;
import com.sandu.ximon.admin.manager.iot.frame.A5Frame;
@@ -11,14 +14,19 @@
import com.sandu.ximon.admin.manager.iot.rrpc.enums.RemoteUpdateTypeEnum;
import com.sandu.ximon.admin.manager.iot.rrpc.mainboard.MainBoardInvokeSyncService;
import com.sandu.ximon.admin.manager.iot.rrpc.util.FileProcessingUtils;
import com.sandu.ximon.admin.security.SecurityUtils;
import com.sandu.ximon.admin.utils.StoreOperationRecordsUtils;
import com.sandu.ximon.admin.utils.StringUtil;
import com.sandu.ximon.dao.bo.RemoteUpdateFileBo;
import com.sandu.ximon.dao.domain.Admin;
import com.sandu.ximon.dao.domain.Client;
import com.sandu.ximon.dao.domain.RemoteUpdateFile;
import com.sandu.ximon.dao.mapper.RemoteUpdateFileMapper;
import org.springframework.stereotype.Service;
import java.io.IOException;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
/**
@@ -27,6 +35,8 @@
 */
@Service
public class RemoteUpdateService extends BaseServiceImpl<RemoteUpdateFileMapper, RemoteUpdateFile> {
    private RemoteUpdateFileMapper remoteUpdateFileMapper;
    /**
     * 添加文件更新内容
     *
@@ -41,6 +51,8 @@
        RemoteUpdateFile remoteUpdateFile = new RemoteUpdateFile();
        remoteUpdateFile.setAliAddress(aliAddress);
        remoteUpdateFile.setFileType(fileType);
        remoteUpdateFile.setUploadUserId(SecurityUtils.getUserId());
        remoteUpdateFile.setUploadUserType(SecurityUtils.getClientId() == null ? 0 : 1);
        remoteUpdateFile.setSoftwareVersion(new BigDecimal(softwareVersion).setScale(2, BigDecimal.ROUND_DOWN));
        remoteUpdateFile.setHardwareVersion(new BigDecimal(hardwareVersion).setScale(2, BigDecimal.ROUND_DOWN));
        remoteUpdateFile.setFilename(filename);
@@ -65,7 +77,7 @@
        }
        remoteUpdateFile.setFilename(remoteFileName);
        boolean update = updateById(remoteUpdateFile);
        if(!update){
        if (!update) {
            throw new BusinessException("修改固件升级文件名失败!");
        }
        return "修改固件升级文件名成功!";
@@ -76,8 +88,36 @@
     *
     * @return
     */
    public List<RemoteUpdateFile> getRemoteFileList() {
        return list();
    public List<RemoteUpdateFileBo> getRemoteFileList() {
        List<RemoteUpdateFile> list = list();
        List<Admin> adminList = SpringContextHolder.getBean(AdminService.class).list();
        List<Client> clientList = SpringContextHolder.getBean(ClientService.class).list();
        List<RemoteUpdateFileBo> remoteUpdateFileBoList = new ArrayList<>();
        RemoteUpdateFileBo remoteUpdateFileBo;
        for (RemoteUpdateFile bean : list) {
            remoteUpdateFileBo = new RemoteUpdateFileBo();
            BeanUtil.copyProperties(bean, remoteUpdateFileBo);
            if (bean.getUploadUserType() == 0) {
                for (Admin admin : adminList) {
                    if (bean.getUploadUserId().equals(admin.getId())) {
                        remoteUpdateFileBo.setUploadName(admin.getNickName());
                    }
                }
            } else if (bean.getUploadUserType() == 1) {
                for (Client client : clientList) {
                    if (bean.getUploadUserId().equals(client.getId())) {
                        remoteUpdateFileBo.setUploadName(client.getClientName());
                    }
                }
            } else {
                remoteUpdateFileBo.setUploadName("未知用户!");
            }
            remoteUpdateFileBoList.add(remoteUpdateFileBo);
        }
        return remoteUpdateFileBoList;
    }