whycxzp
2021-10-08 3ca441018c216998d69d326d590009725ab2113f
更新默认大屏展示应用默认数据
1 文件已重命名
4个文件已修改
90 ■■■■■ 已修改文件
src/main/java/com/whyc/App.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/controller/ApplicationController.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/listener/ApplicationListener.java 77 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/mapper/ApplicationMapper.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/ApplicationMapper.xml 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/App.java
File was renamed from src/main/java/com/whyc/Application.java
@@ -18,11 +18,11 @@
@ServletComponentScan(basePackages = {"com.whyc.filter","com.whyc.servlet","com.whyc.listener"})
@EnableCaching
@EnableScheduling
public class Application extends WebMvcConfigurerAdapter implements WebMvcConfigurer {
public class App extends WebMvcConfigurerAdapter implements WebMvcConfigurer {
//public class Application extends SpringBootServletInitializer {
    public static void main(String[] args) {
        SpringApplication.run(Application.class,args);
        SpringApplication.run(App.class,args);
    }
    /*war改造*/
src/main/java/com/whyc/controller/ApplicationController.java
@@ -39,7 +39,6 @@
    /**
     * 如果更新的为默认布局,则复制默认布局为当前用户布局
     * 前端需要传递userId 前端 TODO
     */
    @PutMapping
    @ApiOperation(value = "应用-更新名称")
@@ -70,7 +69,7 @@
    /*======应用配置======*/
    /**
     * 前端需要做限制,不允许appId=0的应用进行修改,需要先重命名应用 前端 TODO
     * 不允许appId=0的应用进行修改,需要先重命名应用
     * @param configDTO
     * @return
     */
src/main/java/com/whyc/listener/ApplicationListener.java
@@ -1,18 +1,32 @@
package com.whyc.listener;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.whyc.mapper.ApplicationConfigMapper;
import com.whyc.pojo.Application;
import com.whyc.constant.SqlConstant;
import com.whyc.mapper.ApplicationMapper;
import com.whyc.mapper.DBMapper;
import com.whyc.pojo.ApplicationConfig;
import javax.annotation.Resource;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import javax.servlet.annotation.WebListener;
import java.util.LinkedList;
import java.util.List;
@WebListener
public class ApplicationListener implements ServletContextListener {
    @Resource
    private DBMapper dbMapper;
    @Resource
    private ApplicationMapper appMapper;
    @Resource
    private ApplicationConfigMapper configMapper;
    @Override
    public void contextInitialized(ServletContextEvent sce) {
@@ -30,6 +44,69 @@
            //单体实际容量
            dbMapper.createTable(SqlConstant.TB_MON_CAP);
        }
        //初始化的时候,检查是否有大屏的默认应用-布局,如果没有的话,初始化默认数据
        boolean recordExist = appMapper.existDefaultApp()!=0;
        if(!recordExist){
            //添加默认应用
            Application application = new Application();
            //application.setId(0);
            application.setName("默认大屏展示");
            application.setScreenshot(null);
            application.setBgPic("bigScreenBG");
            application.setHeadPic("bigScreenTitle");
            application.setUserId(0);
            application.setActiveStatus(0);
            appMapper.insert(application);
            UpdateWrapper<Application> updateWrapper = Wrappers.update();
            updateWrapper.set("id",0).eq("id",application.getId());
            appMapper.update(null,updateWrapper);
            //添加默认布局
            List<ApplicationConfig> configList = new LinkedList<>();
            List<Object[]> dataList = new LinkedList<>();
            Object[] data1={14, 0, "地图", 0.30448717948717946, 0.4927536231884058, 0.44871794871794873, 0d, "chinaMap"};
            Object[] data2={1, 0, "放电和充电电流", 0.20032051282051283, 0.2478134110787172, 0d, 0d, "latticeBar"};
            Object[] data3={2, 0, "整流器", 0.20032051282051283, 0.2478134110787172, 0d, 0.2478134110787172, "imgPieChart"};
            Object[] data4={3, 0, "电池组", 0.20032051282051283, 0.2478134110787172, 0d, 0.4956268221574344, "triangleBarChart"};
            Object[] data5={4, 0, "电池状态", 0.20032051282051283, 0.2478134110787172, 0d, 0.7434402332361516, "abeamProChart"};
            Object[] data6={5, 0, "电源状态", 0.23237179487179488, 0.4927536231884058, 0.20833333333333334, 0d, "powerChart"};
            Object[] data7={11, 0, "交流ABC", 0.23237179487179488, 0.4927536231884058, 0.20833333333333334, 0.4927536231884058, "histogramAlternating"};
            Object[] data8={12, 0, "单体电压、内阻温度", 0.30448717948717946, 0.4927536231884058, 0.44871794871794873, 0.4927536231884058, "monomerVoltage"};
            Object[] data9={13, 0, "放电电流", 0.23237179487179488, 0.2478134110787172, 0.7612179487179487, 0d, "dischargeCircuit"};
            Object[] data10={23, 0, "在线电压和组端电压", 0.235, 0.25, 0.7612179487179487, 0.7391304347826086, "PictorialBar"};
            Object[] data11={6, 0, "机房续航能力", 0.235, 0.25, 0.7612179487179487, 0.2478134110787172, "RoseChartED"};
            Object[] data12={7, 0, "单体容量健康率", 0.235, 0.25, 0.7612179487179487, 0.4956268221574344, "RoseChartHea"};
            dataList.add(data1);
            dataList.add(data2);
            dataList.add(data3);
            dataList.add(data4);
            dataList.add(data5);
            dataList.add(data6);
            dataList.add(data7);
            dataList.add(data8);
            dataList.add(data9);
            dataList.add(data10);
            dataList.add(data11);
            dataList.add(data12);
            for (int i = 0; i < 12; i++) {
                ApplicationConfig config = new ApplicationConfig();
                config.setId((Integer) dataList.get(i)[0]);
                config.setAppId((Integer) dataList.get(i)[1]);
                config.setName((String) dataList.get(i)[2]);
                config.setW((Double) dataList.get(i)[3]);
                config.setH((Double) dataList.get(i)[4]);
                config.setX((Double) dataList.get(i)[5]);
                config.setY((Double) dataList.get(i)[6]);
                config.setType((String) dataList.get(i)[7]);
                configList.add(config);
            }
            configMapper.insertBatchSomeColumn(configList);
        }
    }
src/main/java/com/whyc/mapper/ApplicationMapper.java
@@ -5,4 +5,7 @@
public interface ApplicationMapper extends CustomMapper<Application> {
    int insertApp(Application app);
    int existDefaultApp();
}
src/main/resources/mapper/ApplicationMapper.xml
@@ -6,4 +6,7 @@
    <insert id="insertApp" useGeneratedKeys="true" keyProperty="id">
        insert into db_app_sys.tb_application(name) values (#{name});
    </insert>
    <select id="existDefaultApp" resultType="java.lang.Integer">
        select count(*) from db_app_sys.tb_application where id=0 and user_id=0
    </select>
</mapper>