Browse Source

后台管理修改

shilin 2 years ago
parent
commit
2b5de63768
65 changed files with 6318 additions and 921 deletions
  1. 1 1
      web/monitor-web-sxjn/src/main/java/com/gyee/SpringbootStart.java
  2. 11 2
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/common/base/BaseController.java
  3. 115 0
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/common/cache/RedisSessionDao.java
  4. 22 5
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/common/conf/ZtConfig.java
  5. 79 0
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/common/domain/ResuTree.java
  6. 73 0
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/common/domain/ResultTable.java
  7. 9 6
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/common/exception/GlobalExceptionResolver.java
  8. 116 97
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/common/interceptor/MyInterceptor.java
  9. 57 1
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/common/spring/Constant.java
  10. 36 1
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/common/spring/InitialRunner.java
  11. 11 0
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/controller/admin/SysCompanyController.java
  12. 195 0
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/controller/admin/SysInterUrlController.java
  13. 224 0
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/controller/admin/SysWindpowerstationController.java
  14. 40 0
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/mapper/auto/SysInterUrlMapper.java
  15. 97 0
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/mapper/auto/SysWindpowerstationMapper.java
  16. 87 0
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/model/auto/SysInterUrl.java
  17. 491 0
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/model/auto/SysInterUrlExample.java
  18. 303 0
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/model/auto/SysWindpowerstation.java
  19. 842 0
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/model/auto/SysWindpowerstationExample.java
  20. 1 1
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/service/SysDatasService.java
  21. 1 1
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/service/SysDictTypeService.java
  22. 1 1
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/service/SysFileService.java
  23. 137 0
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/service/SysInterUrlService.java
  24. 1 1
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/service/SysOperLogService.java
  25. 1 1
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/service/SysRoleService.java
  26. 1 1
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/service/SysUserService.java
  27. 196 0
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/service/SysWindpowerstationService.java
  28. 1 1
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/service/VueRoleService.java
  29. 1 1
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/service/VueUserService.java
  30. 1 1
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/service/initialpoint/IinitialPoint.java
  31. 4 3
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/service/initialpoint/InitialPointEdosHfService.java
  32. 1 1
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/service/initialpoint/InitialPointEdosService.java
  33. 206 202
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/service/initialpoint/InitialPointGoldenService.java
  34. 10 1
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/service/websocket/CftInfoPushService.java
  35. 767 486
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/service/websocket/GenreSetPushService.java
  36. 89 30
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/service/websocket/WpInfoPushService.java
  37. 99 0
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/shiro/config/MShiroFilterFactoryBean.java
  38. 71 24
      web/monitor-web-sxjn/src/main/java/com/gyee/frame/shiro/config/ShiroConfig.java
  39. 65 16
      web/monitor-web-sxjn/src/main/resources/application-jn.yml
  40. 1 1
      web/monitor-web-sxjn/src/main/resources/application.yml
  41. 1 1
      web/monitor-web-sxjn/src/main/resources/mybatis-generator.xml
  42. 236 0
      web/monitor-web-sxjn/src/main/resources/mybatis/auto/SysInterUrlMapper.xml
  43. 318 0
      web/monitor-web-sxjn/src/main/resources/mybatis/auto/SysWindpowerstationMapper.xml
  44. 2 2
      web/monitor-web-sxjn/src/main/resources/mybatis/auto/TsysUserMapper.xml
  45. 1 1
      web/monitor-web-sxjn/src/main/resources/mybatis/custom/TsysUserMapper.xml
  46. 1 1
      web/monitor-web-sxjn/src/main/resources/mybatis/custom/TvueUserMapper.xml
  47. 2 2
      web/monitor-web-sxjn/src/main/resources/static/admin/user/css/user-add.css
  48. 3 1
      web/monitor-web-sxjn/src/main/resources/templates/admin/sysCompany/add.html
  49. 3 1
      web/monitor-web-sxjn/src/main/resources/templates/admin/sysCompany/edit.html
  50. 2 2
      web/monitor-web-sxjn/src/main/resources/templates/admin/sysCompany/list.html
  51. 4 2
      web/monitor-web-sxjn/src/main/resources/templates/admin/sysCompany/tree.html
  52. 288 0
      web/monitor-web-sxjn/src/main/resources/templates/admin/sysCompany/tree2.html
  53. 5 2
      web/monitor-web-sxjn/src/main/resources/templates/admin/sysDepartment/add.html
  54. 3 1
      web/monitor-web-sxjn/src/main/resources/templates/admin/sysDepartment/edit.html
  55. 5 2
      web/monitor-web-sxjn/src/main/resources/templates/admin/sysDepartment/tree.html
  56. 178 0
      web/monitor-web-sxjn/src/main/resources/templates/admin/sysWindpowerstation/add.html
  57. 150 0
      web/monitor-web-sxjn/src/main/resources/templates/admin/sysWindpowerstation/edit.html
  58. 328 0
      web/monitor-web-sxjn/src/main/resources/templates/admin/sysWindpowerstation/list.html
  59. 228 0
      web/monitor-web-sxjn/src/main/resources/templates/admin/sysWindpowerstation/tree2.html
  60. 4 4
      web/monitor-web-sxjn/src/main/resources/templates/admin/user/add.html
  61. 4 4
      web/monitor-web-sxjn/src/main/resources/templates/admin/user/edit.html
  62. 4 4
      web/monitor-web-sxjn/src/main/resources/templates/admin/uservue/add.html
  63. 4 4
      web/monitor-web-sxjn/src/main/resources/templates/admin/uservue/edit.html
  64. 79 0
      web/monitor-web-sxjn/src/main/resources/templates/error/666.html
  65. 1 1
      web/monitor-web-sxjn/src/test/java/test/InitialPointServiceTest.java

+ 1 - 1
web/monitor-web-sxjn/src/main/java/com/gyee/SpringbootStart.java

@@ -32,7 +32,7 @@ public class SpringbootStart {
 //        System.out.println("结束导出风机测点。。。。。。");
 
 //        System.out.println("开始导出风场测点。。。。。。");
-//        initialPointGoldenService.initalFc(false);
+//        initialPointGoldenService.initalFc();
 //        System.out.println("结束导出风场测点。。。。。。");
 //
 //

+ 11 - 2
web/monitor-web-sxjn/src/main/java/com/gyee/frame/common/base/BaseController.java

@@ -2,6 +2,7 @@ package com.gyee.frame.common.base;
 
 import cn.hutool.core.util.StrUtil;
 import com.gyee.frame.common.domain.AjaxResult;
+import com.gyee.frame.common.domain.ResultTable;
 import com.gyee.frame.model.custom.TitleVo;
 import com.gyee.frame.service.*;
 import org.springframework.beans.propertyeditors.CustomDateEditor;
@@ -64,7 +65,8 @@ public class BaseController
 	//公告
 	@Resource
 	public SysNoticeService sysNoticeService;
-
+    @Resource
+    public SysWindpowerstationService sysWindpowerstationService;
     /**
      * 将前台传递过来的日期格式的字符串,自动转化为Date类型
      */
@@ -76,7 +78,14 @@ public class BaseController
         binder.registerCustomEditor(Date.class, new CustomDateEditor(dateFormat, true));
     }
 
-
+    /**
+     * Describe: 返回数据表格数据 分页
+     * Param data
+     * Return 表格分页数据
+     * */
+    protected  static ResultTable pageTable(Object data, long count){
+        return ResultTable.pageTable(count,data);
+    }
     /**
      * 响应返回结果
      * 

+ 115 - 0
web/monitor-web-sxjn/src/main/java/com/gyee/frame/common/cache/RedisSessionDao.java

@@ -0,0 +1,115 @@
+package com.gyee.frame.common.cache;
+
+import org.apache.shiro.session.Session;
+import org.apache.shiro.session.UnknownSessionException;
+import org.apache.shiro.session.mgt.eis.EnterpriseCacheSessionDAO;
+import org.springframework.data.redis.core.RedisTemplate;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.io.Serializable;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.List;
+import java.util.Set;
+import java.util.concurrent.TimeUnit;
+import java.util.stream.Collectors;
+
+/**
+ * Created by Administrator on 2018/7/31.
+ */
+@Service
+public class RedisSessionDao extends EnterpriseCacheSessionDAO {
+    // Session超时时间,单位为毫秒
+    private long expireTime = 120000;
+
+    private String prefix="session_";
+  @Resource
+  private RedisTemplate<String,Object>  redisTemplate;// Redis操作类,对这个使用不熟悉的,可以参考前面的博客
+
+    public RedisSessionDao() {
+        super();
+    }
+
+    public RedisSessionDao(long expireTime, RedisTemplate redisTemplate) {
+        super();
+        this.expireTime = expireTime;
+        this.redisTemplate = redisTemplate;
+    }
+
+    @Override // 更新session
+    public void update(Session session) throws UnknownSessionException {
+        System.out.println("===============update================");
+        if (session == null || session.getId() == null) {
+            return;
+        }
+        session.setTimeout(expireTime);
+        redisTemplate.opsForValue().set(prefix+session.getId(), session, expireTime, TimeUnit.MILLISECONDS);
+    }
+
+    @Override // 删除session
+    public void delete(Session session) {
+        System.out.println("===============delete================");
+        if (null == session) {
+            return;
+        }
+        redisTemplate.opsForValue().getOperations().delete(prefix+session.getId());
+    }
+
+    @Override
+// 获取活跃的session,可以用来统计在线人数,如果要实现这个功能,可以在将session加入redis时指定一个session前缀,统计的时候则使用keys("session-prefix*")的方式来模糊查找redis中所有的session集合
+    public Collection<Session> getActiveSessions() {
+        Set<String> keys = this.redisTemplate.keys(this.prefix + "*");
+
+        if (keys != null && !keys.isEmpty()) {
+            List<Object> sessions = this.redisTemplate.opsForValue().multiGet(keys);
+            if (sessions != null) {
+                return sessions.stream().map(o -> (Session) o).collect(Collectors.toList());
+            }
+        }
+        return Collections.emptySet();
+    }
+
+    @Override// 加入session
+    protected Serializable doCreate(Session session) {
+        System.out.println("===============doCreate================");
+        Serializable sessionId = this.generateSessionId(session);
+        this.assignSessionId(session, sessionId);
+
+        redisTemplate.opsForValue().set(prefix+session.getId(), session, expireTime, TimeUnit.MILLISECONDS);
+        return sessionId;
+    }
+
+    @Override// 读取session
+    protected Session doReadSession(Serializable sessionId) {
+        System.out.println("==============doReadSession=================");
+        if (sessionId == null) {
+            return null;
+        }
+        Session session=null;
+        try {
+            return (Session) redisTemplate.opsForValue().get(prefix+sessionId);
+        }catch (ClassCastException e)
+        {
+            System.out.println("系统初始化中,请稍等。。。。。");
+        }
+      return session;
+    }
+
+    public long getExpireTime() {
+        return expireTime;
+    }
+
+    public void setExpireTime(long expireTime) {
+        this.expireTime = expireTime;
+    }
+
+    public RedisTemplate getRedisTemplate() {
+        return redisTemplate;
+    }
+
+    public void setRedisTemplate(RedisTemplate redisTemplate) {
+        this.redisTemplate = redisTemplate;
+
+    }
+}

+ 22 - 5
web/monitor-web-sxjn/src/main/java/com/gyee/frame/common/conf/ZtConfig.java

@@ -14,14 +14,31 @@ import java.util.Map;
 public class ZtConfig {
 
 
-    private static Map<String,List<String>> maps;
+    private static Map<String,List<String>> pointmap;
+    private static Map<String,List<String>> ratemap;
+    private static Map<String,List<String>> unitmap;
 
+    public static Map<String, List<String>> getPointmap() {
+        return pointmap;
+    }
+
+    public  void setPointmap(Map<String, List<String>> pointmap) {
+        ZtConfig.pointmap = pointmap;
+    }
+
+    public static Map<String, List<String>> getRatemap() {
+        return ratemap;
+    }
+
+    public  void setRatemap(Map<String, List<String>> ratemap) {
+        ZtConfig.ratemap = ratemap;
+    }
 
-    public static Map<String, List<String>> getMaps() {
-        return maps;
+    public static Map<String, List<String>> getUnitmap() {
+        return unitmap;
     }
 
-    public void setMaps(Map<String, List<String>> maps) {
-        this.maps = maps;
+    public  void setUnitmap(Map<String, List<String>> unitmap) {
+        ZtConfig.unitmap = unitmap;
     }
 }

+ 79 - 0
web/monitor-web-sxjn/src/main/java/com/gyee/frame/common/domain/ResuTree.java

@@ -0,0 +1,79 @@
+package com.gyee.frame.common.domain;
+
+/**
+ * Describe: Ajax 返回 Dtree 结果封装数据
+ * Author: 就 眠 仪 式
+ * CreateTime: 2019/10/23
+ * */
+
+public class ResuTree {
+
+    /**
+     * 状态信息
+     * */
+    private Status status = new Status();
+
+    /**
+     * 返回数据
+     * */
+    private Object data;
+
+    /**
+     * 所需内部类
+     * */
+
+    public class Status{
+
+        private Integer code = 200;
+
+        private String message = "默认";
+
+        public Integer getCode() {
+            return code;
+        }
+
+        public void setCode(Integer code) {
+            this.code = code;
+        }
+
+        public String getMessage() {
+            return message;
+        }
+
+        public void setMessage(String message) {
+            this.message = message;
+        }
+
+        public Status(Integer code, String message) {
+            this.code = code;
+            this.message = message;
+        }
+
+        public Status() {
+        }
+    }
+
+    public Status getStatus() {
+        return status;
+    }
+
+    public void setStatus(Status status) {
+        this.status = status;
+    }
+
+    public Object getData() {
+        return data;
+    }
+
+    public void setData(Object data) {
+        this.data = data;
+    }
+
+    public ResuTree() {
+    }
+
+    public ResuTree(Status status, Object data) {
+        this.status = status;
+        this.data = data;
+    }
+}

+ 73 - 0
web/monitor-web-sxjn/src/main/java/com/gyee/frame/common/domain/ResultTable.java

@@ -0,0 +1,73 @@
+package com.gyee.frame.common.domain;
+
+public class ResultTable {
+     /**
+     * 状态码
+     * */
+    private Integer code;
+
+    /**
+     * 提示消息
+     * */
+    private String msg;
+
+    /**
+     * 消息总量
+     * */
+    private Long count;
+
+    /**
+     * 数据对象
+     * */
+    private Object data;
+
+    public Integer getCode() {
+        return code;
+    }
+
+    public void setCode(Integer code) {
+        this.code = code;
+    }
+
+    public String getMsg() {
+        return msg;
+    }
+
+    public void setMsg(String msg) {
+        this.msg = msg;
+    }
+
+    public Long getCount() {
+        return count;
+    }
+
+    public void setCount(Long count) {
+        this.count = count;
+    }
+
+    public Object getData() {
+        return data;
+    }
+
+    public void setData(Object data) {
+        this.data = data;
+    }
+
+    /**
+     * 构 建
+     * */
+    public static ResultTable pageTable(long count, Object data){
+       ResultTable resultTable = new ResultTable();
+        resultTable.setData(data);
+        resultTable.setCode(0);
+        resultTable.setCount(count);
+        return resultTable;
+    }
+
+    public static ResultTable dataTable(Object data){
+        ResultTable resultTable = new ResultTable();
+        resultTable.setData(data);
+        resultTable.setCode(0);
+        return resultTable;
+    }
+}

+ 9 - 6
web/monitor-web-sxjn/src/main/java/com/gyee/frame/common/exception/GlobalExceptionResolver.java

@@ -1,7 +1,8 @@
 package com.gyee.frame.common.exception;
 
-import javax.servlet.http.HttpServletRequest;
-
+import com.gyee.frame.common.domain.AjaxResult;
+import com.gyee.frame.common.exception.demo.DemoModeException;
+import com.gyee.frame.util.ServletUtils;
 import org.apache.shiro.authz.AuthorizationException;
 import org.apache.shiro.authz.UnauthenticatedException;
 import org.apache.shiro.authz.UnauthorizedException;
@@ -12,11 +13,10 @@ import org.springframework.web.HttpRequestMethodNotSupportedException;
 import org.springframework.web.bind.annotation.ExceptionHandler;
 import org.springframework.web.bind.annotation.RestControllerAdvice;
 import org.springframework.web.servlet.ModelAndView;
-import com.gyee.frame.common.domain.AjaxResult;
-import com.gyee.frame.common.exception.demo.DemoModeException;
-import com.gyee.frame.util.ServletUtils;
 import org.thymeleaf.exceptions.TemplateInputException;
 
+import javax.servlet.http.HttpServletRequest;
+
 /**
  * 全局异常处理
  * @author gyee
@@ -38,7 +38,9 @@ public class GlobalExceptionResolver{
     	logger.error(" 权限校验异常》》"+e.getMessage(), e);
         if (ServletUtils.isAjaxRequest(request))
         {
-            return AjaxResult.error(e.getMessage());
+//            return AjaxResult.error(e.getMessage());
+            ModelAndView mv = new ModelAndView("redirect:/error/403");
+            return mv;
         }
         else
         {
@@ -95,6 +97,7 @@ public class GlobalExceptionResolver{
     @ExceptionHandler(Exception.class) 
     public ModelAndView handle(Exception e){ 
     	logger.error("系统异常:", e);
+
 	    ModelAndView mv = new ModelAndView(); 
 	    mv.addObject("message", e.getMessage()); 
 	    mv.setViewName("/error/999"); 

+ 116 - 97
web/monitor-web-sxjn/src/main/java/com/gyee/frame/common/interceptor/MyInterceptor.java

@@ -1,15 +1,17 @@
 package com.gyee.frame.common.interceptor;
 
-import java.util.ArrayList;
-import java.util.List;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-
+import cn.hutool.core.util.StrUtil;
+import com.gyee.frame.common.spring.SpringUtils;
+import com.gyee.frame.model.auto.SysInterUrl;
+import com.gyee.frame.model.auto.SysInterUrlExample;
+import com.gyee.frame.service.SysInterUrlService;
 import org.springframework.web.servlet.HandlerInterceptor;
 import org.springframework.web.servlet.ModelAndView;
-import com.gyee.frame.common.conf.V2Config;
-import com.gyee.frame.common.exception.demo.DemoModeException;
-import cn.hutool.core.util.StrUtil;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.util.ArrayList;
+import java.util.List;
 /**
  * 自定义拦截器
  * @author fc
@@ -19,88 +21,92 @@ public class MyInterceptor  implements HandlerInterceptor {
 
 	/*************演示模式需要 start*************/
 	/**需要被拦截的post请求url**/
-	public static List<String> posturllist=new ArrayList<String>();
+	public static List<SysInterUrl> posturllist=new ArrayList<SysInterUrl>();
 	/**需要被拦截的get请求url**/
-	public static List<String> geturllist=new ArrayList<String>();
+	public static List<SysInterUrl> geturllist=new ArrayList<SysInterUrl>();
 
+    public static SysInterUrlService interUrlService= SpringUtils.getBean(SysInterUrlService.class);
 	/**
 	 * 初始化静态块,避免多次创建调用
 	 * 需要拦截的请求集合
 	 */
 	static {
-		//用户POST请求
-		posturllist.add("/UserController/add");
-		posturllist.add("/UserController/remove");
-		posturllist.add("/UserController/edit");
-		posturllist.add("/UserController/editPwd");
-		//自动生成POST请求
-		posturllist.add("/autoCodeController/addGlobal");
-		posturllist.add("/autoCodeController/saveOne");
-		//字典表POST请求
-		posturllist.add("/DictDataController/add");
-		posturllist.add("/DictDataController/remove");
-		posturllist.add("/DictDataController/edit");
-		posturllist.add("/DictTypeController/add");
-		posturllist.add("/DictTypeController/remove");
-		posturllist.add("/DictTypeController/edit");
-		//邮箱POST请求
-		posturllist.add("/EmailController/add");
-		posturllist.add("/EmailController/edit");
-		//文件上传POST请求
-		posturllist.add("/FileController/upload");
-		posturllist.add("/FileController/add");
-		posturllist.add("/FileController/remove");
-		posturllist.add("/FileController/del_file");
-		posturllist.add("/FileController/edit");
-		//日志POST请求
-		posturllist.add("/LogController/remove");
-		//权限POST请求
-		posturllist.add("/PermissionController/add");
-		posturllist.add("/PermissionController/remove");
-		posturllist.add("/PermissionController/edit");
-		//定时器POST请求
-		posturllist.add("/SysQuartzJobController/add");
-		posturllist.add("/SysQuartzJobController/remove");
-		posturllist.add("/SysQuartzJobController/edit");
-		posturllist.add("/SysQuartzJobController/changeStatus");
-		posturllist.add("/SysQuartzJobController/run");
-		posturllist.add("/SysQuartzJobLogController/remove");
-		//角色POST请求
-		posturllist.add("/RoleController/add");
-		posturllist.add("/RoleController/remove");
-		posturllist.add("/RoleController/edit");
-		//公告POST请求
-		posturllist.add("/SysNoticeController/add");
-		posturllist.add("/SysNoticeController/remove");
-		posturllist.add("/SysNoticeController/viewinfo");
-		posturllist.add("/SysNoticeController/edit");
-		//省份POST请求
-		posturllist.add("/SysProvinceController/add");
-		posturllist.add("/SysProvinceController/remove");
-		posturllist.add("/SysProvinceController/edit");
-		//地区POST请求
-		posturllist.add("/SysAreaController/add");
-		posturllist.add("/SysAreaController/remove");
-		posturllist.add("/SysAreaController/edit");
-		//城市POST请求
-		posturllist.add("/SysCityController/add");
-		posturllist.add("/SysCityController/remove");
-		posturllist.add("/SysCityController/edit");
-		//街道POST请求
-		posturllist.add("/SysStreetController/add");
-		posturllist.add("/SysStreetController/remove");
-		posturllist.add("/SysStreetController/edit");
-		//百度编辑器POST请求
-		posturllist.add("/UeditorController/ueditor");
-		posturllist.add("/UeditorController/");
-		posturllist.add("/UeditorController/imgUpload");
-		//七牛POST请求
-		posturllist.add("/QiNiuCloudController/uploadToQiNiu");
-		//定时器GET请求
-		geturllist.add("/quartz/stop");
-		geturllist.add("/quartz/resume");
-		geturllist.add("/quartz/update");
-		geturllist.add("/quartz/delete");
+
+        SysInterUrlExample example_post= new SysInterUrlExample();
+        geturllist=interUrlService.selectByExample(example_post);
+//		//用户POST请求
+//		posturllist.add("/UserController/add");
+//		posturllist.add("/UserController/remove");
+//		posturllist.add("/UserController/edit");
+//		posturllist.add("/UserController/editPwd");
+//		//自动生成POST请求
+//		posturllist.add("/autoCodeController/addGlobal");
+//		posturllist.add("/autoCodeController/saveOne");
+//		//字典表POST请求
+//		posturllist.add("/DictDataController/add");
+//		posturllist.add("/DictDataController/remove");
+//		posturllist.add("/DictDataController/edit");
+//		posturllist.add("/DictTypeController/add");
+//		posturllist.add("/DictTypeController/remove");
+//		posturllist.add("/DictTypeController/edit");
+//		//邮箱POST请求
+//		posturllist.add("/EmailController/add");
+//		posturllist.add("/EmailController/edit");
+//		//文件上传POST请求
+//		posturllist.add("/FileController/upload");
+//		posturllist.add("/FileController/add");
+//		posturllist.add("/FileController/remove");
+//		posturllist.add("/FileController/del_file");
+//		posturllist.add("/FileController/edit");
+//		//日志POST请求
+//		posturllist.add("/LogController/remove");
+//		//权限POST请求
+//		posturllist.add("/PermissionController/add");
+//		posturllist.add("/PermissionController/remove");
+//		posturllist.add("/PermissionController/edit");
+//		//定时器POST请求
+//		posturllist.add("/SysQuartzJobController/add");
+//		posturllist.add("/SysQuartzJobController/remove");
+//		posturllist.add("/SysQuartzJobController/edit");
+//		posturllist.add("/SysQuartzJobController/changeStatus");
+//		posturllist.add("/SysQuartzJobController/run");
+//		posturllist.add("/SysQuartzJobLogController/remove");
+//		//角色POST请求
+//		posturllist.add("/RoleController/add");
+//		posturllist.add("/RoleController/remove");
+//		posturllist.add("/RoleController/edit");
+//		//公告POST请求
+//		posturllist.add("/SysNoticeController/add");
+//		posturllist.add("/SysNoticeController/remove");
+//		posturllist.add("/SysNoticeController/viewinfo");
+//		posturllist.add("/SysNoticeController/edit");
+//		//省份POST请求
+//		posturllist.add("/SysProvinceController/add");
+//		posturllist.add("/SysProvinceController/remove");
+//		posturllist.add("/SysProvinceController/edit");
+//		//地区POST请求
+//		posturllist.add("/SysAreaController/add");
+//		posturllist.add("/SysAreaController/remove");
+//		posturllist.add("/SysAreaController/edit");
+//		//城市POST请求
+//		posturllist.add("/SysCityController/add");
+//		posturllist.add("/SysCityController/remove");
+//		posturllist.add("/SysCityController/edit");
+//		//街道POST请求
+//		posturllist.add("/SysStreetController/add");
+//		posturllist.add("/SysStreetController/remove");
+//		posturllist.add("/SysStreetController/edit");
+//		//百度编辑器POST请求
+//		posturllist.add("/UeditorController/ueditor");
+//		posturllist.add("/UeditorController/");
+//		posturllist.add("/UeditorController/imgUpload");
+//		//七牛POST请求
+//		posturllist.add("/QiNiuCloudController/uploadToQiNiu");
+//		//定时器GET请求
+//		geturllist.add("/quartz/stop");
+//		geturllist.add("/quartz/resume");
+//		geturllist.add("/quartz/update");
+//		geturllist.add("/quartz/delete");
 
 	}
 	/*************演示模式需要 end*************/
@@ -130,14 +136,21 @@ public class MyInterceptor  implements HandlerInterceptor {
 		//结束
 
 
-		request.setAttribute("rootPath", request.getContextPath());
-		if(V2Config.getDemoEnabled().equals("true")) {
-			Boolean b = ifurl(request, response);
-			if(b) {
-				throw new DemoModeException();
-			}
-		}
-		return true;// 只有返回true才会继续向下执行,返回false取消当前请求
+//		request.setAttribute("rootPath", request.getContextPath());
+//		if(V2Config.getDemoEnabled().equals("true")) {
+//			Boolean b = ifurl(request, response);
+//			if(b) {
+//				throw new DemoModeException();
+//			}
+//		}
+//		return true;// 只有返回true才会继续向下执行,返回false取消当前请求
+
+        request.setAttribute("rootPath", request.getContextPath());
+        //开启与关闭url过滤
+//        if(ifurl(request, response)) {
+//          return false;
+//        }
+        return true;// 只有返回true才会继续向下执行,返回false取消当前请求
 	}
 
 	/**
@@ -150,16 +163,22 @@ public class MyInterceptor  implements HandlerInterceptor {
 	 */
 	public Boolean ifurl(HttpServletRequest request, HttpServletResponse response) {
 		//当前请求
-		String requesturl=request.getRequestURI();
+        String requesturl=request.getRemoteAddr();
+
+        String url="http://" + request.getRemoteAddr() //服务器地址
+                + ":"
+                + request.getServerPort()           //端口号
+                + request.getRequestURI();
+
 		if(request.getMethod().equals("POST")) {
-			for (String postrul : posturllist) {
-				if(StrUtil.containsAnyIgnoreCase(requesturl, postrul)) {
+			for (SysInterUrl sysInterUrl : posturllist) {
+				if(StrUtil.containsAnyIgnoreCase(url, sysInterUrl.getUrl())) {
 					return true;
 				}
 			}
-		}else {
-			for (String geturl : geturllist) {
-				if(StrUtil.containsAnyIgnoreCase(requesturl, geturl)) {
+		}else if(request.getMethod().equals("GET")){
+			for (SysInterUrl sysInterUrl : geturllist) {
+				if(StrUtil.containsAnyIgnoreCase(url, sysInterUrl.getUrl())) {
 					return true;
 				}
 			}

+ 57 - 1
web/monitor-web-sxjn/src/main/java/com/gyee/frame/common/spring/Constant.java

@@ -328,6 +328,25 @@ public static final String[] TPOINT_WP_AGC = { "AGC001", "AGC002",
 			"FCCFTFS50", "FCCFTFS60", "FCCFTFS70", "FCCFTFS80", "FCCFTFX10", "FCCFTFX30",
 			"FCCFTFX50", "FCCFTFX60", "FCCFTFX70", "FCCFTFX80", "FCCFTWD", "FCCFTSD",
 			"FCCFTYQ", "KQMD" };
+    public static final String[] TPOINT_WP_CFT_GJY = { "FCCFTFS10", "FCCFTFS30",
+            "FCCFTFS50", "FCCFTFS60", "FCCFTFS70", "FCCFTFS80", "FCCFTFX10", "FCCFTFX30",
+            "FCCFTFX50", "FCCFTFX60", "FCCFTFX70", "FCCFTFX80", "FCCFTWD", "FCCFTSD",
+            "FCCFTYQ" };
+    public static final String[] TPOINT_WP_CFT_GJYPOINT = { "FD-GJY1-TaiZhong1.140603F0111MDQ41PA001DB0121PA04AVG00",
+            "FD-GJY1-TaiZhong1.140603F0111MDQ43PA001DB0121PA04AVG00",
+            "FD-GJY1-TaiZhong1.140603F0111MDQ45PA001DB0121PA04AVG00",
+            "FD-GJY1-TaiZhong1.140603F0111MDQ44PA001DB0121PA04AVG00",
+            "FD-GJY1-TaiZhong1.140603F0111MDQ48PA001DB0121PA04AVG00",
+            "FD-GJY1-TaiZhong1.140603F0111MDQ47PA001DB0121PA04AVG00",
+            "FD-GJY1-TaiZhong1.140603F0111MDQ43PA003DB0111PA04RAW00",
+            "FD-GJY1-TaiZhong1.140603F0111MDQ45PA003DB0111PA04RAW00",
+            "FD-GJY1-TaiZhong1.140603F0111MDQ48PA003DB0111PA04RAW00",
+            "FD-GJY1-TaiZhong2.140603F0111MDQ56PA003DB0111PA04RAW00",
+            "FD-GJY1-TaiZhong2.140603F0111MDQ61PA003DB0111PA04RAW00",
+            "FD-GJY1-TaiZhong2.140603F0111MDQ62PA003DB0111PA04RAW00",
+            "GF-SY-Yuandong.140621G0111WEA01TP002DB0121TP01CNT01",
+            "GF-SY-Yuandong.140621G0111WEA01HU003DB0121HU01CNT01",
+            "GF-SY-Yuandong.140621G0111WEA01PA004DB0121PA01CNT01" };
 	public static final String FCCFTFS10 = "FCCFTFS10";// 测风塔10米风速
 	public static final String FCCFTFS30 = "FCCFTFS30";// 测风塔30米风速
 	public static final String FCCFTFS50 = "FCCFTFS50";// 测风塔50米风速
@@ -600,7 +619,7 @@ public static final String TPOINT_WT_60FX = "AI011";// 风机60秒风向
     public static final String TPOINT_NBQ_C_DL = "AIG011";//电网C相电流
     public static final String TPOINT_NBQ_DWPL = "AIG012";// 电网频率
     public static final String TPOINT_NBQ_GL = "AIG013";// 功率
-    public static final String TPOINT_NBQ_WGGL = "AIG014";// 功率
+    public static final String TPOINT_NBQ_WGGL = "AIG014";// 无功功率
     public static final String TPOINT_NBQ_GLYS = "AIG015";// 功率因数
     public static final String TPOINT_NBQ_WD = "AIG017";// 机内温度
     public static final String TPOINT_NBQ_XL = "AIG018";// 效率
@@ -629,4 +648,41 @@ public static final String TPOINT_WT_60FX = "AI011";// 风机60秒风向
     public static final String[] TPOINT_Inverter_Matrix = { "FJZT", "AIG013",
             "AIG027"};
 
+
+    //组件温度	AIG001
+    public static final String TPOINT_GF_ZJWD = "AIG001";
+    //环境风速	AIG002
+    public static final String TPOINT_GF_HJFS = "AIG002";
+    //湿度	AIG003
+    public static final String TPOINT_GF_SD = "AIG003";
+    //环境温度	AIG004
+    public static final String TPOINT_GF_HJWD = "AIG004";
+    //气压	AIG005
+    public static final String TPOINT_GF_QY = "AIG005";
+    //总辐照度	AIG006
+    public static final String TPOINT_GF_ZFSQD = "AIG006";
+    //直接辐照度	AIG007
+    public static final String TPOINT_GF_ZJFSD = "AIG007";
+    //散射辐照度	AIG008
+    public static final String TPOINT_GF_SSFZD = "AIG008";//日照强度
+    //风向	AIG009
+    public static final String TPOINT_GF_FX = "AIG009";
+    //日累计辐射量	CIG001
+    public static final String TPOINT_GF_RLJFSL = "CIG001";
+    //日满发小时
+    public static final String TPOINT_GF_RMFXS = "CIG002";
+    //当日节约标准煤	CIG003
+    public static final String TPOINT_GF_RJYBM = "CIG003";
+    //当日减排二氧化碳	CIG004
+    public static final String TPOINT_GF_RJPEYHT = "CIG004";
+    //支路异常台数	CIG005
+    public static final String TPOINT_GF_ZLYCSL = "CIG005";
+    //报警台数	CIG006
+    public static final String TPOINT_GF_BJTS = "CIG006";
+    //交流功率	CIG007
+    public static final String TPOINT_GF_JLGL = "CIG007";
+    //直流功率	CIG008
+    public static final String TPOINT_GF_ZLGL = "CIG008";
+
+
 }

+ 36 - 1
web/monitor-web-sxjn/src/main/java/com/gyee/frame/common/spring/InitialRunner.java

@@ -134,6 +134,9 @@ public class InitialRunner implements CommandLineRunner {
 
 
     public static Map<String, List<BoxChange>> gp_xbmap = new HashMap<String, List<BoxChange>>();
+    public static Map<String, List<Square>> gp_sqmap = new HashMap<String, List<Square>>();
+    public static Map<String, List<Square>> pj_sqmap = new HashMap<String, List<Square>>();
+    public static Map<String, List<Square>> ln_sqmap = new HashMap<String, List<Square>>();
     public static Map<String,BoxChange> xbmap = new HashMap<String, BoxChange>();
     public static Map<String, List<Inverter>> gp_nbqmap = new HashMap<String, List<Inverter>>();
     public static Map<String, List<Inverter>> pj_nbqmap = new HashMap<String, List<Inverter>>();
@@ -158,6 +161,38 @@ public class InitialRunner implements CommandLineRunner {
         if(!sqqls.isEmpty())
         {
             for (Square sq : sqqls) {
+                if(gp_sqmap.containsKey(sq.getWindpowerstationid()))
+                {
+                    List<Square> ls= gp_sqmap.get(sq.getWindpowerstationid());
+                    ls.add(sq);
+                    gp_sqmap.put(sq.getWindpowerstationid(),ls);
+                }else {
+                    List<Square> ls=new ArrayList<>();
+                    ls.add(sq);
+                    gp_sqmap.put(sq.getWindpowerstationid(),ls);
+                }
+
+                if(pj_sqmap.containsKey(sq.getProjectid()))
+                {
+                    List<Square> ls= pj_sqmap.get(sq.getProjectid());
+                    ls.add(sq);
+                    pj_sqmap.put(sq.getProjectid(),ls);
+                }else {
+                    List<Square> ls=new ArrayList<>();
+                    ls.add(sq);
+                    pj_sqmap.put(sq.getProjectid(),ls);
+                }
+
+                if(ln_sqmap.containsKey(sq.getLineid()))
+                {
+                    List<Square> ls= ln_sqmap.get(sq.getLineid());
+                    ls.add(sq);
+                    ln_sqmap.put(sq.getLineid(),ls);
+                }else {
+                    List<Square> ls=new ArrayList<>();
+                    ls.add(sq);
+                    ln_sqmap.put(sq.getLineid(),ls);
+                }
                 sqmap.put(sq.getId(),sq);
             }
         }
@@ -744,7 +779,7 @@ public class InitialRunner implements CommandLineRunner {
                 }
             }
         }
-        wppointnummap= windPowerstationTestingPoint2Service.getWpPointTotal();
+//        wppointnummap= windPowerstationTestingPoint2Service.getWpPointTotal();
     }
 
 }

+ 11 - 0
web/monitor-web-sxjn/src/main/java/com/gyee/frame/controller/admin/SysCompanyController.java

@@ -196,6 +196,17 @@ public class SysCompanyController extends BaseController{
     public String Tree(){
     	 return prefix + "/tree";
     }
+
+
+    /**
+     * 跳转到菜单树页面
+     * @return
+     */
+    @ApiOperation(value = "跳转到菜单树页面", notes = "跳转到菜单树页面")
+    @GetMapping("/tree2")
+    public String Tree2(){
+        return prefix + "/tree2";
+    }
     
     /**
      * 获取菜单树

+ 195 - 0
web/monitor-web-sxjn/src/main/java/com/gyee/frame/controller/admin/SysInterUrlController.java

@@ -0,0 +1,195 @@
+package com.gyee.frame.controller.admin;
+
+
+import com.github.pagehelper.PageInfo;
+import com.gyee.frame.common.base.BaseController;
+import com.gyee.frame.common.domain.AjaxResult;
+import com.gyee.frame.model.auto.SysInterUrl;
+import com.gyee.frame.model.custom.TableSplitResult;
+import com.gyee.frame.model.custom.Tablepar;
+import com.gyee.frame.service.SysInterUrlService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Controller;
+import org.springframework.ui.ModelMap;
+import org.springframework.web.bind.annotation.*;
+
+@Api(value = "拦截url表")
+@Controller
+@RequestMapping("/SysInterUrlController")
+public class SysInterUrlController extends BaseController {
+	
+	private final String prefix = "admin/sysInterUrl";
+	@Autowired
+	private SysInterUrlService sysInterUrlService;
+	
+	/**
+	 * 分页跳转
+	 * @param model
+	 * @return
+	 * @author fuce
+	 * @Date 2020年4月18日 下午11:43:33
+	 */
+	@ApiOperation(value = "分页跳转", notes = "分页跳转")
+	@GetMapping("/view")
+	@RequiresPermissions("gen:sysInterUrl:view")
+    public String view(ModelMap model)
+    {
+		return prefix + "/list";
+    }
+	
+	/**
+	 * 分页查询
+	 * @param tablepar
+	 * @param searchText
+	 * @return
+	 * @author fuce
+	 * @Date 2020年4月18日 下午11:43:42
+	 */
+	//@Log(title = "拦截url表集合查询", action = "111")
+	@ApiOperation(value = "分页查询", notes = "分页查询")
+	@PostMapping("/list")
+	@RequiresPermissions("gen:sysInterUrl:list")
+	@ResponseBody
+    public Object list(Tablepar tablepar,String searchText) {
+        PageInfo<SysInterUrl> page = sysInterUrlService.list(tablepar, searchText);
+        TableSplitResult<SysInterUrl> result = new TableSplitResult<SysInterUrl>(page.getPageNum(), page.getTotal(), page.getList());
+        return result;
+    }
+	/**
+     * 新增跳转
+     */
+	@ApiOperation(value = "新增跳转", notes = "新增跳转")
+    @GetMapping("/add")
+    public String add(ModelMap modelMap)
+    {
+        return prefix + "/add";
+    }
+	
+	/**
+	 * 新增
+	 * @param sysInterUrl
+	 * @return
+	 * @author fuce
+	 * @Date 2020年4月18日 下午11:44:30
+	 */
+	//@Log(title = "拦截url表新增", action = "1")
+	@ApiOperation(value = "新增", notes = "新增")
+	@PostMapping("/add")
+	@RequiresPermissions("gen:sysInterUrl:add")
+	@ResponseBody
+	public AjaxResult add(SysInterUrl sysInterUrl){
+		int b=sysInterUrlService.insertSelective(sysInterUrl);
+		if(b>0){
+			return success();
+		}else{
+			return error();
+		}
+	}
+	
+	/**
+	 * 复制
+	 * @param id
+	 * @return
+	 * @author fuce
+	 * @Date 2020年4月18日 下午11:44:42
+	 */
+	//@Log(title = "复制", action = "1")
+	@ApiOperation(value = "复制", notes = "复制")
+	@GetMapping("/copy/{id}")
+	@RequiresPermissions("gen:sysInterUrl:add")
+	@ResponseBody
+	public AjaxResult copy(@PathVariable("id") String id){
+		SysInterUrl sysInterUrl= sysInterUrlService.selectByPrimaryKey(id);
+		sysInterUrl.setInterName(sysInterUrl.getInterName()+"复制");
+		int b=sysInterUrlService.insertSelective(sysInterUrl);
+		if(b>0){
+			return success();
+		}else{
+			return error();
+		}
+	}
+	
+	
+	/**
+	 * 删除用户
+	 * @param ids
+	 * @return
+	 */
+	//@Log(title = "拦截url表删除", action = "111")
+	@ApiOperation(value = "删除", notes = "删除")
+    @PostMapping("/remove")
+	@RequiresPermissions("gen:sysInterUrl:remove")
+	@ResponseBody
+	public AjaxResult remove(String ids){
+		int b=sysInterUrlService.deleteByPrimaryKey(ids);
+		if(b>0){
+			return success();
+		}else{
+			return error();
+		}
+	}
+	
+	/**
+	 * 检查用户
+	 * @return
+	 */
+	@ApiOperation(value = "检查Name唯一", notes = "检查Name唯一")
+	@PostMapping("/checkNameUnique")
+	@ResponseBody
+	public int checkNameUnique(SysInterUrl sysInterUrl){
+		int b=sysInterUrlService.checkNameUnique(sysInterUrl);
+		if(b>0){
+			return 1;
+		}else{
+			return 0;
+		}
+	}
+	
+	
+	/**
+	 * 修改跳转
+	 * @param id
+	 * @param mmap
+	 * @return
+	 */
+	@ApiOperation(value = "修改跳转", notes = "修改跳转")
+	@GetMapping("/edit/{id}")
+    public String edit(@PathVariable("id") String id, ModelMap mmap)
+    {
+        mmap.put("SysInterUrl", sysInterUrlService.selectByPrimaryKey(id));
+
+        return prefix + "/edit";
+    }
+	
+	/**
+     * 修改保存
+     */
+    //@Log(title = "拦截url表修改", action = "1")
+	@ApiOperation(value = "修改保存", notes = "修改保存")
+    @RequiresPermissions("gen:sysInterUrl:edit")
+    @PostMapping("/edit")
+    @ResponseBody
+    public AjaxResult editSave(SysInterUrl record)
+    {
+        return toAjax(sysInterUrlService.updateByPrimaryKeySelective(record));
+    }
+
+    
+    /**
+   	 * 根据主键查询
+   	 * 
+   	 * @param id
+   	 * @return
+   	 */
+   	@PostMapping("/get/{id}")
+   	@ApiOperation(value = "根据id查询唯一", notes = "根据id查询唯一")
+   	public SysInterUrl edit(@PathVariable("id") String id) {
+   		return sysInterUrlService.selectByPrimaryKey(id);
+   	}
+    
+
+	
+}

+ 224 - 0
web/monitor-web-sxjn/src/main/java/com/gyee/frame/controller/admin/SysWindpowerstationController.java

@@ -0,0 +1,224 @@
+package com.gyee.frame.controller.admin;
+
+import com.github.pagehelper.PageInfo;
+import com.gyee.frame.common.base.BaseController;
+import com.gyee.frame.common.domain.AjaxResult;
+import com.gyee.frame.model.auto.SysWindpowerstation;
+import com.gyee.frame.model.custom.TableSplitResult;
+import com.gyee.frame.model.custom.Tablepar;
+import com.gyee.frame.model.custom.TitleVo;
+import com.gyee.frame.service.SysWindpowerstationService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
+import org.springframework.stereotype.Controller;
+import org.springframework.ui.ModelMap;
+import org.springframework.web.bind.annotation.*;
+
+import javax.annotation.Resource;
+import java.util.List;
+
+@Api(value = "公司表")
+@Controller
+@RequestMapping("/SysWindpowerstationController")
+public class SysWindpowerstationController extends BaseController{
+
+    private String prefix = "admin/sysWindpowerstation";
+    @Resource
+    private SysWindpowerstationService sysWindpowerstationService;
+
+    /**
+     * 分页跳转
+     * @param model
+     * @return
+     * @author gyee
+     * @Date 2020年4月18日 下午11:48:55
+     */
+    @ApiOperation(value = "分页跳转", notes = "分页跳转")
+    @GetMapping("/view")
+    @RequiresPermissions("gen:sysWindpowerstation:view")
+    public String view(ModelMap model)
+    {
+        String str="公司表";
+        setTitle(model, new TitleVo("列表", str+"管理", true,"欢迎进入"+str+"页面", true, false));
+        return prefix + "/list";
+    }
+
+    /**
+     * 分页查询
+     * @param tablepar
+     * @param searchText
+     * @return
+     * @author gyee
+     * @Date 2020年4月18日 下午11:48:34
+     */
+    //@Log(title = "公司表集合查询", action = "111")
+    @ApiOperation(value = "分页查询", notes = "分页查询")
+    @PostMapping("/list")
+    @RequiresPermissions("gen:sysWindpowerstation:list")
+    @ResponseBody
+    public Object list(Tablepar tablepar,String searchText){
+        PageInfo<SysWindpowerstation> page=sysWindpowerstationService.list(tablepar,searchText) ;
+        TableSplitResult<SysWindpowerstation> result=new TableSplitResult<SysWindpowerstation>(page.getPageNum(), page.getTotal(), page.getList());
+        return  result;
+    }
+
+    @ApiOperation(value = "分页查询2", notes = "分页查询2")
+    @PostMapping("/list2")
+    @ResponseBody
+    public Object list2(Tablepar tablepar,String searchText){
+        List<SysWindpowerstation> page= sysWindpowerstationService.list2(searchText) ;
+        return  page;
+    }
+
+    /**
+     * 新增
+     */
+    @ApiOperation(value = "新增跳转", notes = "新增跳转")
+    @GetMapping("/add")
+    public String add(ModelMap modelMap)
+    {
+        return prefix + "/add";
+    }
+
+    /**
+     * 新增
+     * @param sysWindpowerstation
+     * @return
+     * @author gyee
+     * @Date 2020年4月18日 下午11:47:51
+     */
+    //@Log(title = "公司表新增", action = "111")
+    @ApiOperation(value = "新增", notes = "新增")
+    @PostMapping("/add")
+    @RequiresPermissions("gen:sysWindpowerstation:add")
+    @ResponseBody
+    public AjaxResult add(SysWindpowerstation sysWindpowerstation){
+        int b=sysWindpowerstationService.insertSelective(sysWindpowerstation);
+        if(b>0){
+            return success();
+        }else{
+            return error();
+        }
+    }
+
+    /**
+     * 删除
+     * @param ids
+     * @return
+     */
+    //@Log(title = "公司表删除", action = "111")
+    @ApiOperation(value = "删除", notes = "删除")
+    @PostMapping("/remove")
+    @RequiresPermissions("gen:sysWindpowerstation:remove")
+    @ResponseBody
+    public AjaxResult remove(String ids){
+        int b=sysWindpowerstationService.deleteByPrimaryKey(ids);
+        if(b>0){
+            return success();
+        }else{
+            return error();
+        }
+    }
+
+    /**
+     * 检查公司
+     * @return
+     */
+    @ApiOperation(value = "检查Name唯一", notes = "检查Name唯一")
+    @PostMapping("/checkNameUnique")
+    @ResponseBody
+    public int checkNameUnique(SysWindpowerstation sysWindpowerstation){
+        int b=sysWindpowerstationService.checkNameUnique(sysWindpowerstation);
+        if(b>0){
+            return 1;
+        }else{
+            return 0;
+        }
+    }
+
+
+    /**
+     * 修改跳转
+     * @param id
+     * @param mmap
+     * @return
+     */
+    @ApiOperation(value = "修改跳转", notes = "修改跳转")
+    @GetMapping("/edit/{id}")
+    public String edit(@PathVariable("id") String id, ModelMap mmap)
+    {
+        //获取自己的权限信息
+        SysWindpowerstation mytsysPermission = sysWindpowerstationService.selectByPrimaryKey(id);
+        //获取父权限信息
+        SysWindpowerstation sysWindpowerstation = sysWindpowerstationService.selectByPrimaryKey(mytsysPermission.getParentId());
+        if(sysWindpowerstation==null) {
+            sysWindpowerstation=new SysWindpowerstation("1", "0","","顶级菜单","","",   0, 1, 1);
+        }
+        mmap.put("SysWindpowerstation", mytsysPermission);
+        mmap.put("perSysWindpowerstation", sysWindpowerstation);
+        return prefix + "/edit";
+    }
+
+    /**
+     * 修改保存
+     */
+    //@Log(title = "公司表修改", action = "111")
+    @ApiOperation(value = "修改保存", notes = "修改保存")
+    @RequiresPermissions("gen:sysWindpowerstation:edit")
+    @PostMapping("/edit")
+    @ResponseBody
+    public AjaxResult editSave(SysWindpowerstation record)
+    {
+        return toAjax(sysWindpowerstationService.updateByPrimaryKeySelective(record));
+    }
+
+
+    /**
+     * 根据主键查询
+     *
+     * @param id
+     * @return
+     */
+    @PostMapping("/get/{id}")
+    @ApiOperation(value = "根据id查询唯一", notes = "根据id查询唯一")
+    public SysWindpowerstation edit(@PathVariable("id") String id) {
+        return sysWindpowerstationService.selectByPrimaryKey(id);
+    }
+
+
+    /**
+     * 跳转到菜单树页面
+     * @return
+     */
+    @ApiOperation(value = "跳转到菜单树页面", notes = "跳转到菜单树页面")
+    @GetMapping("/tree")
+    public String Tree(){
+        return prefix + "/tree";
+    }
+
+
+    /**
+     * 跳转到菜单树页面
+     * @return
+     */
+    @ApiOperation(value = "跳转到菜单树页面", notes = "跳转到菜单树页面")
+    @GetMapping("/tree2")
+    public String Tree2(){
+        return prefix + "/tree2";
+    }
+
+    /**
+     * 获取菜单树
+     * @param pid 父id【没用到】
+     * @return
+     */
+    @ApiOperation(value = "获取菜单树", notes = "获取菜单树")
+    @PostMapping("/tree/{pid}")
+    @ResponseBody
+    public AjaxResult Tree(@PathVariable("pid") String pid){
+        return retobject(200, sysWindpowerstationService.getbooBootstrapTreePerm());
+    }
+
+
+}

+ 40 - 0
web/monitor-web-sxjn/src/main/java/com/gyee/frame/mapper/auto/SysInterUrlMapper.java

@@ -0,0 +1,40 @@
+package com.gyee.frame.mapper.auto;
+
+
+import com.gyee.frame.model.auto.SysInterUrl;
+import com.gyee.frame.model.auto.SysInterUrlExample;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * 拦截url表 SysInterUrlMapper
+ * @author fuce_自动生成
+ * @email 115889198@qq.com
+ * @date 2020-01-05 01:48:22
+ */
+public interface SysInterUrlMapper {
+      	   	      	      	      	      
+    long countByExample(SysInterUrlExample example);
+
+    int deleteByExample(SysInterUrlExample example);
+		
+    int deleteByPrimaryKey(String id);
+		
+    int insert(SysInterUrl record);
+
+    int insertSelective(SysInterUrl record);
+
+    List<SysInterUrl> selectByExample(SysInterUrlExample example);
+		
+    SysInterUrl selectByPrimaryKey(String id);
+		
+    int updateByExampleSelective(@Param("record") SysInterUrl record, @Param("example") SysInterUrlExample example);
+
+    int updateByExample(@Param("record") SysInterUrl record, @Param("example") SysInterUrlExample example); 
+		
+    int updateByPrimaryKeySelective(SysInterUrl record);
+
+    int updateByPrimaryKey(SysInterUrl record);
+  	  	
+}

+ 97 - 0
web/monitor-web-sxjn/src/main/java/com/gyee/frame/mapper/auto/SysWindpowerstationMapper.java

@@ -0,0 +1,97 @@
+package com.gyee.frame.mapper.auto;
+
+import com.gyee.frame.model.auto.SysWindpowerstation;
+import com.gyee.frame.model.auto.SysWindpowerstationExample;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+public interface SysWindpowerstationMapper {
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table t_sys_windpowerstation
+     *
+     * @mbg.generated
+     */
+    long countByExample(SysWindpowerstationExample example);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table t_sys_windpowerstation
+     *
+     * @mbg.generated
+     */
+    int deleteByExample(SysWindpowerstationExample example);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table t_sys_windpowerstation
+     *
+     * @mbg.generated
+     */
+    int deleteByPrimaryKey(String id);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table t_sys_windpowerstation
+     *
+     * @mbg.generated
+     */
+    int insert(SysWindpowerstation record);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table t_sys_windpowerstation
+     *
+     * @mbg.generated
+     */
+    int insertSelective(SysWindpowerstation record);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table t_sys_windpowerstation
+     *
+     * @mbg.generated
+     */
+    List<SysWindpowerstation> selectByExample(SysWindpowerstationExample example);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table t_sys_windpowerstation
+     *
+     * @mbg.generated
+     */
+    SysWindpowerstation selectByPrimaryKey(String id);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table t_sys_windpowerstation
+     *
+     * @mbg.generated
+     */
+    int updateByExampleSelective(@Param("record") SysWindpowerstation record, @Param("example") SysWindpowerstationExample example);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table t_sys_windpowerstation
+     *
+     * @mbg.generated
+     */
+    int updateByExample(@Param("record") SysWindpowerstation record, @Param("example") SysWindpowerstationExample example);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table t_sys_windpowerstation
+     *
+     * @mbg.generated
+     */
+    int updateByPrimaryKeySelective(SysWindpowerstation record);
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table t_sys_windpowerstation
+     *
+     * @mbg.generated
+     */
+    int updateByPrimaryKey(SysWindpowerstation record);
+}

+ 87 - 0
web/monitor-web-sxjn/src/main/java/com/gyee/frame/model/auto/SysInterUrl.java

@@ -0,0 +1,87 @@
+package com.gyee.frame.model.auto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.io.Serializable;
+
+/**
+ * 拦截url表 SysInterUrl 
+ * @author fuce_自动生成
+ * @email 115889198@qq.com
+ * @date 2020-01-05 01:48:22
+ */
+ @ApiModel(value="SysInterUrl", description="拦截url表")
+public class SysInterUrl implements Serializable {
+
+	private static final long serialVersionUID = 1L;
+	
+		
+	/** 主键 **/
+	@ApiModelProperty(value = "主键")
+    private String id;
+		
+	/** 拦截名称 **/
+	@ApiModelProperty(value = "拦截名称")
+    private String interName;
+		
+	/** 拦截url **/
+	@ApiModelProperty(value = "拦截url")
+    private String url;
+		
+	/** 类型 **/
+	@ApiModelProperty(value = "类型")
+    private Integer type;
+		
+		
+	public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+	 
+			
+	public String getInterName() {
+        return interName;
+    }
+
+    public void setInterName(String interName) {
+        this.interName = interName;
+    }
+	 
+			
+	public String getUrl() {
+        return url;
+    }
+
+    public void setUrl(String url) {
+        this.url = url;
+    }
+	 
+			
+	public Integer getType() {
+        return type;
+    }
+
+    public void setType(Integer type) {
+        this.type = type;
+    }
+	 
+			
+	public SysInterUrl() {
+        super();
+    }
+    
+																						
+	public SysInterUrl(String id,String interName,String url,Integer type) {
+	
+		this.id = id;
+		this.interName = interName;
+		this.url = url;
+		this.type = type;
+		
+	}
+	
+}

+ 491 - 0
web/monitor-web-sxjn/src/main/java/com/gyee/frame/model/auto/SysInterUrlExample.java

@@ -0,0 +1,491 @@
+package com.gyee.frame.model.auto;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 拦截url表 SysInterUrlExample
+ * @author fuce_自动生成
+ * @email 115889198@qq.com
+ * @date 2020-01-05 01:48:22
+ */
+public class SysInterUrlExample {
+
+    protected String orderByClause;
+
+    protected boolean distinct;
+
+    protected List<Criteria> oredCriteria;
+
+    public SysInterUrlExample() {
+        oredCriteria = new ArrayList<Criteria>();
+    }
+
+    public void setOrderByClause(String orderByClause) {
+        this.orderByClause = orderByClause;
+    }
+
+    public String getOrderByClause() {
+        return orderByClause;
+    }
+
+    public void setDistinct(boolean distinct) {
+        this.distinct = distinct;
+    }
+
+    public boolean isDistinct() {
+        return distinct;
+    }
+
+    public List<Criteria> getOredCriteria() {
+        return oredCriteria;
+    }
+
+    public void or(Criteria criteria) {
+        oredCriteria.add(criteria);
+    }
+
+    public Criteria or() {
+        Criteria criteria = createCriteriaInternal();
+        oredCriteria.add(criteria);
+        return criteria;
+    }
+
+    public Criteria createCriteria() {
+        Criteria criteria = createCriteriaInternal();
+        if (oredCriteria.size() == 0) {
+            oredCriteria.add(criteria);
+        }
+        return criteria;
+    }
+
+    protected Criteria createCriteriaInternal() {
+        Criteria criteria = new Criteria();
+        return criteria;
+    }
+
+    public void clear() {
+        oredCriteria.clear();
+        orderByClause = null;
+        distinct = false;
+    }
+
+    protected abstract static class GeneratedCriteria {
+        protected List<Criterion> criteria;
+
+        protected GeneratedCriteria() {
+            super();
+            criteria = new ArrayList<Criterion>();
+        }
+
+        public boolean isValid() {
+            return criteria.size() > 0;
+        }
+
+        public List<Criterion> getAllCriteria() {
+            return criteria;
+        }
+
+        public List<Criterion> getCriteria() {
+            return criteria;
+        }
+
+        protected void addCriterion(String condition) {
+            if (condition == null) {
+                throw new RuntimeException("Value for condition cannot be null");
+            }
+            criteria.add(new Criterion(condition));
+        }
+
+        protected void addCriterion(String condition, Object value, String property) {
+            if (value == null) {
+                throw new RuntimeException("Value for " + property + " cannot be null");
+            }
+            criteria.add(new Criterion(condition, value));
+        }
+
+        protected void addCriterion(String condition, Object value1, Object value2, String property) {
+            if (value1 == null || value2 == null) {
+                throw new RuntimeException("Between values for " + property + " cannot be null");
+            }
+            criteria.add(new Criterion(condition, value1, value2));
+        }
+				
+        public Criteria andIdIsNull() {
+            addCriterion("id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdIsNotNull() {
+            addCriterion("id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdEqualTo(String value) {
+            addCriterion("id =", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotEqualTo(String value) {
+            addCriterion("id <>", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdGreaterThan(String value) {
+            addCriterion("id >", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdGreaterThanOrEqualTo(String value) {
+            addCriterion("id >=", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLessThan(String value) {
+            addCriterion("id <", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLessThanOrEqualTo(String value) {
+            addCriterion("id <=", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLike(String value) {
+            addCriterion("id like", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotLike(String value) {
+            addCriterion("id not like", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdIn(List<String> values) {
+            addCriterion("id in", values, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotIn(List<String> values) {
+            addCriterion("id not in", values, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdBetween(String value1, String value2) {
+            addCriterion("id between", value1, value2, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotBetween(String value1, String value2) {
+            addCriterion("id not between", value1, value2, "id");
+            return (Criteria) this;
+        }
+        
+			
+        public Criteria andInterNameIsNull() {
+            addCriterion("inter_name is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andInterNameIsNotNull() {
+            addCriterion("inter_name is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andInterNameEqualTo(String value) {
+            addCriterion("inter_name =", value, "interName");
+            return (Criteria) this;
+        }
+
+        public Criteria andInterNameNotEqualTo(String value) {
+            addCriterion("inter_name <>", value, "interName");
+            return (Criteria) this;
+        }
+
+        public Criteria andInterNameGreaterThan(String value) {
+            addCriterion("inter_name >", value, "interName");
+            return (Criteria) this;
+        }
+
+        public Criteria andInterNameGreaterThanOrEqualTo(String value) {
+            addCriterion("inter_name >=", value, "interName");
+            return (Criteria) this;
+        }
+
+        public Criteria andInterNameLessThan(String value) {
+            addCriterion("inter_name <", value, "interName");
+            return (Criteria) this;
+        }
+
+        public Criteria andInterNameLessThanOrEqualTo(String value) {
+            addCriterion("inter_name <=", value, "interName");
+            return (Criteria) this;
+        }
+
+        public Criteria andInterNameLike(String value) {
+            addCriterion("inter_name like", value, "interName");
+            return (Criteria) this;
+        }
+
+        public Criteria andInterNameNotLike(String value) {
+            addCriterion("inter_name not like", value, "interName");
+            return (Criteria) this;
+        }
+
+        public Criteria andInterNameIn(List<String> values) {
+            addCriterion("inter_name in", values, "interName");
+            return (Criteria) this;
+        }
+
+        public Criteria andInterNameNotIn(List<String> values) {
+            addCriterion("inter_name not in", values, "interName");
+            return (Criteria) this;
+        }
+
+        public Criteria andInterNameBetween(String value1, String value2) {
+            addCriterion("inter_name between", value1, value2, "interName");
+            return (Criteria) this;
+        }
+
+        public Criteria andInterNameNotBetween(String value1, String value2) {
+            addCriterion("inter_name not between", value1, value2, "interName");
+            return (Criteria) this;
+        }
+        
+			
+        public Criteria andUrlIsNull() {
+            addCriterion("url is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUrlIsNotNull() {
+            addCriterion("url is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUrlEqualTo(String value) {
+            addCriterion("url =", value, "url");
+            return (Criteria) this;
+        }
+
+        public Criteria andUrlNotEqualTo(String value) {
+            addCriterion("url <>", value, "url");
+            return (Criteria) this;
+        }
+
+        public Criteria andUrlGreaterThan(String value) {
+            addCriterion("url >", value, "url");
+            return (Criteria) this;
+        }
+
+        public Criteria andUrlGreaterThanOrEqualTo(String value) {
+            addCriterion("url >=", value, "url");
+            return (Criteria) this;
+        }
+
+        public Criteria andUrlLessThan(String value) {
+            addCriterion("url <", value, "url");
+            return (Criteria) this;
+        }
+
+        public Criteria andUrlLessThanOrEqualTo(String value) {
+            addCriterion("url <=", value, "url");
+            return (Criteria) this;
+        }
+
+        public Criteria andUrlLike(String value) {
+            addCriterion("url like", value, "url");
+            return (Criteria) this;
+        }
+
+        public Criteria andUrlNotLike(String value) {
+            addCriterion("url not like", value, "url");
+            return (Criteria) this;
+        }
+
+        public Criteria andUrlIn(List<String> values) {
+            addCriterion("url in", values, "url");
+            return (Criteria) this;
+        }
+
+        public Criteria andUrlNotIn(List<String> values) {
+            addCriterion("url not in", values, "url");
+            return (Criteria) this;
+        }
+
+        public Criteria andUrlBetween(String value1, String value2) {
+            addCriterion("url between", value1, value2, "url");
+            return (Criteria) this;
+        }
+
+        public Criteria andUrlNotBetween(String value1, String value2) {
+            addCriterion("url not between", value1, value2, "url");
+            return (Criteria) this;
+        }
+        
+			
+        public Criteria andTypeIsNull() {
+            addCriterion("type is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeIsNotNull() {
+            addCriterion("type is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeEqualTo(Integer value) {
+            addCriterion("type =", value, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeNotEqualTo(Integer value) {
+            addCriterion("type <>", value, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeGreaterThan(Integer value) {
+            addCriterion("type >", value, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeGreaterThanOrEqualTo(Integer value) {
+            addCriterion("type >=", value, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeLessThan(Integer value) {
+            addCriterion("type <", value, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeLessThanOrEqualTo(Integer value) {
+            addCriterion("type <=", value, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeLike(Integer value) {
+            addCriterion("type like", value, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeNotLike(Integer value) {
+            addCriterion("type not like", value, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeIn(List<Integer> values) {
+            addCriterion("type in", values, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeNotIn(List<Integer> values) {
+            addCriterion("type not in", values, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeBetween(Integer value1, Integer value2) {
+            addCriterion("type between", value1, value2, "type");
+            return (Criteria) this;
+        }
+
+        public Criteria andTypeNotBetween(Integer value1, Integer value2) {
+            addCriterion("type not between", value1, value2, "type");
+            return (Criteria) this;
+        }
+        
+	}
+
+    public static class Criteria extends GeneratedCriteria {
+
+        protected Criteria() {
+            super();
+        }
+    }
+
+    public static class Criterion {
+        private String condition;
+
+        private Object value;
+
+        private Object secondValue;
+
+        private boolean noValue;
+
+        private boolean singleValue;
+
+        private boolean betweenValue;
+
+        private boolean listValue;
+
+        private String typeHandler;
+
+        public String getCondition() {
+            return condition;
+        }
+
+        public Object getValue() {
+            return value;
+        }
+
+        public Object getSecondValue() {
+            return secondValue;
+        }
+
+        public boolean isNoValue() {
+            return noValue;
+        }
+
+        public boolean isSingleValue() {
+            return singleValue;
+        }
+
+        public boolean isBetweenValue() {
+            return betweenValue;
+        }
+
+        public boolean isListValue() {
+            return listValue;
+        }
+
+        public String getTypeHandler() {
+            return typeHandler;
+        }
+
+        protected Criterion(String condition) {
+            super();
+            this.condition = condition;
+            this.typeHandler = null;
+            this.noValue = true;
+        }
+
+        protected Criterion(String condition, Object value, String typeHandler) {
+            super();
+            this.condition = condition;
+            this.value = value;
+            this.typeHandler = typeHandler;
+            if (value instanceof List<?>) {
+                this.listValue = true;
+            } else {
+                this.singleValue = true;
+            }
+        }
+
+        protected Criterion(String condition, Object value) {
+            this(condition, value, null);
+        }
+
+        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
+            super();
+            this.condition = condition;
+            this.value = value;
+            this.secondValue = secondValue;
+            this.typeHandler = typeHandler;
+            this.betweenValue = true;
+        }
+
+        protected Criterion(String condition, Object value, Object secondValue) {
+            this(condition, value, secondValue, null);
+        }
+    }
+}

+ 303 - 0
web/monitor-web-sxjn/src/main/java/com/gyee/frame/model/auto/SysWindpowerstation.java

@@ -0,0 +1,303 @@
+package com.gyee.frame.model.auto;
+
+import java.io.Serializable;
+
+public class SysWindpowerstation implements Serializable {
+    /**
+     *
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database column t_sys_windpowerstation.id
+     *
+     * @mbg.generated
+     */
+    private String id;
+
+    /**
+     *
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database column t_sys_windpowerstation.name
+     *
+     * @mbg.generated
+     */
+    private String name;
+
+    /**
+     *
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database column t_sys_windpowerstation.company_id
+     *
+     * @mbg.generated
+     */
+    private String companyId;
+
+    /**
+     *
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database column t_sys_windpowerstation.status
+     *
+     * @mbg.generated
+     */
+    private Integer status;
+
+    /**
+     *
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database column t_sys_windpowerstation.order_num
+     *
+     * @mbg.generated
+     */
+    private Integer orderNum;
+
+    /**
+     *
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database column t_sys_windpowerstation.company_name
+     *
+     * @mbg.generated
+     */
+    private String companyName;
+
+    /**
+     *
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database column t_sys_windpowerstation.code
+     *
+     * @mbg.generated
+     */
+    private String code;
+
+    /**
+     *
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database column t_sys_windpowerstation.parent_id
+     *
+     * @mbg.generated
+     */
+    private String parentId;
+    private Integer childCount;
+    
+    
+    /**
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database table t_sys_windpowerstation
+     *
+     * @mbg.generated
+     */
+    private static final long serialVersionUID = 1L;
+
+    public Integer getChildCount() {
+        return childCount;
+    }
+
+    public void setChildCount(Integer childCount) {
+        this.childCount = childCount;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method returns the value of the database column t_sys_windpowerstation.id
+     *
+     * @return the value of t_sys_windpowerstation.id
+     *
+     * @mbg.generated
+     */
+    public String getId() {
+        return id;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method sets the value of the database column t_sys_windpowerstation.id
+     *
+     * @param id the value for t_sys_windpowerstation.id
+     *
+     * @mbg.generated
+     */
+    public void setId(String id) {
+        this.id = id == null ? null : id.trim();
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method returns the value of the database column t_sys_windpowerstation.name
+     *
+     * @return the value of t_sys_windpowerstation.name
+     *
+     * @mbg.generated
+     */
+    public String getName() {
+        return name;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method sets the value of the database column t_sys_windpowerstation.name
+     *
+     * @param name the value for t_sys_windpowerstation.name
+     *
+     * @mbg.generated
+     */
+    public void setName(String name) {
+        this.name = name == null ? null : name.trim();
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method returns the value of the database column t_sys_windpowerstation.company_id
+     *
+     * @return the value of t_sys_windpowerstation.company_id
+     *
+     * @mbg.generated
+     */
+    public String getCompanyId() {
+        return companyId;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method sets the value of the database column t_sys_windpowerstation.company_id
+     *
+     * @param companyId the value for t_sys_windpowerstation.company_id
+     *
+     * @mbg.generated
+     */
+    public void setCompanyId(String companyId) {
+        this.companyId = companyId == null ? null : companyId.trim();
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method returns the value of the database column t_sys_windpowerstation.status
+     *
+     * @return the value of t_sys_windpowerstation.status
+     *
+     * @mbg.generated
+     */
+    public Integer getStatus() {
+        return status;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method sets the value of the database column t_sys_windpowerstation.status
+     *
+     * @param status the value for t_sys_windpowerstation.status
+     *
+     * @mbg.generated
+     */
+    public void setStatus(Integer status) {
+        this.status = status;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method returns the value of the database column t_sys_windpowerstation.order_num
+     *
+     * @return the value of t_sys_windpowerstation.order_num
+     *
+     * @mbg.generated
+     */
+    public Integer getOrderNum() {
+        return orderNum;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method sets the value of the database column t_sys_windpowerstation.order_num
+     *
+     * @param orderNum the value for t_sys_windpowerstation.order_num
+     *
+     * @mbg.generated
+     */
+    public void setOrderNum(Integer orderNum) {
+        this.orderNum = orderNum;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method returns the value of the database column t_sys_windpowerstation.company_name
+     *
+     * @return the value of t_sys_windpowerstation.company_name
+     *
+     * @mbg.generated
+     */
+    public String getCompanyName() {
+        return companyName;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method sets the value of the database column t_sys_windpowerstation.company_name
+     *
+     * @param companyName the value for t_sys_windpowerstation.company_name
+     *
+     * @mbg.generated
+     */
+    public void setCompanyName(String companyName) {
+        this.companyName = companyName == null ? null : companyName.trim();
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method returns the value of the database column t_sys_windpowerstation.code
+     *
+     * @return the value of t_sys_windpowerstation.code
+     *
+     * @mbg.generated
+     */
+    public String getCode() {
+        return code;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method sets the value of the database column t_sys_windpowerstation.code
+     *
+     * @param code the value for t_sys_windpowerstation.code
+     *
+     * @mbg.generated
+     */
+    public void setCode(String code) {
+        this.code = code == null ? null : code.trim();
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method returns the value of the database column t_sys_windpowerstation.parent_id
+     *
+     * @return the value of t_sys_windpowerstation.parent_id
+     *
+     * @mbg.generated
+     */
+    public String getParentId() {
+        return parentId;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method sets the value of the database column t_sys_windpowerstation.parent_id
+     *
+     * @param parentId the value for t_sys_windpowerstation.parent_id
+     *
+     * @mbg.generated
+     */
+    public void setParentId(String parentId) {
+        this.parentId = parentId == null ? null : parentId.trim();
+    }
+    public SysWindpowerstation() {
+
+    }
+    public SysWindpowerstation(String id, String parentId,String code,String name, String companyId,String companyName,
+                               Integer status, Integer orderNum, Integer childCount) {
+        this.id = id;
+        this.parentId = parentId;
+        this.code = code;
+        this.name = name;
+        this.companyId = companyId;
+        this.companyName = companyName;
+        this.status = status;
+        this.orderNum = orderNum;
+        this.childCount = childCount;
+
+    }
+}

+ 842 - 0
web/monitor-web-sxjn/src/main/java/com/gyee/frame/model/auto/SysWindpowerstationExample.java

@@ -0,0 +1,842 @@
+package com.gyee.frame.model.auto;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class SysWindpowerstationExample {
+    /**
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database table t_sys_windpowerstation
+     *
+     * @mbg.generated
+     */
+    protected String orderByClause;
+
+    /**
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database table t_sys_windpowerstation
+     *
+     * @mbg.generated
+     */
+    protected boolean distinct;
+
+    /**
+     * This field was generated by MyBatis Generator.
+     * This field corresponds to the database table t_sys_windpowerstation
+     *
+     * @mbg.generated
+     */
+    protected List<Criteria> oredCriteria;
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table t_sys_windpowerstation
+     *
+     * @mbg.generated
+     */
+    public SysWindpowerstationExample() {
+        oredCriteria = new ArrayList<Criteria>();
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table t_sys_windpowerstation
+     *
+     * @mbg.generated
+     */
+    public void setOrderByClause(String orderByClause) {
+        this.orderByClause = orderByClause;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table t_sys_windpowerstation
+     *
+     * @mbg.generated
+     */
+    public String getOrderByClause() {
+        return orderByClause;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table t_sys_windpowerstation
+     *
+     * @mbg.generated
+     */
+    public void setDistinct(boolean distinct) {
+        this.distinct = distinct;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table t_sys_windpowerstation
+     *
+     * @mbg.generated
+     */
+    public boolean isDistinct() {
+        return distinct;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table t_sys_windpowerstation
+     *
+     * @mbg.generated
+     */
+    public List<Criteria> getOredCriteria() {
+        return oredCriteria;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table t_sys_windpowerstation
+     *
+     * @mbg.generated
+     */
+    public void or(Criteria criteria) {
+        oredCriteria.add(criteria);
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table t_sys_windpowerstation
+     *
+     * @mbg.generated
+     */
+    public Criteria or() {
+        Criteria criteria = createCriteriaInternal();
+        oredCriteria.add(criteria);
+        return criteria;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table t_sys_windpowerstation
+     *
+     * @mbg.generated
+     */
+    public Criteria createCriteria() {
+        Criteria criteria = createCriteriaInternal();
+        if (oredCriteria.size() == 0) {
+            oredCriteria.add(criteria);
+        }
+        return criteria;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table t_sys_windpowerstation
+     *
+     * @mbg.generated
+     */
+    protected Criteria createCriteriaInternal() {
+        Criteria criteria = new Criteria();
+        return criteria;
+    }
+
+    /**
+     * This method was generated by MyBatis Generator.
+     * This method corresponds to the database table t_sys_windpowerstation
+     *
+     * @mbg.generated
+     */
+    public void clear() {
+        oredCriteria.clear();
+        orderByClause = null;
+        distinct = false;
+    }
+
+    /**
+     * This class was generated by MyBatis Generator.
+     * This class corresponds to the database table t_sys_windpowerstation
+     *
+     * @mbg.generated
+     */
+    protected abstract static class GeneratedCriteria {
+        protected List<Criterion> criteria;
+
+        protected GeneratedCriteria() {
+            super();
+            criteria = new ArrayList<Criterion>();
+        }
+
+        public boolean isValid() {
+            return criteria.size() > 0;
+        }
+
+        public List<Criterion> getAllCriteria() {
+            return criteria;
+        }
+
+        public List<Criterion> getCriteria() {
+            return criteria;
+        }
+
+        protected void addCriterion(String condition) {
+            if (condition == null) {
+                throw new RuntimeException("Value for condition cannot be null");
+            }
+            criteria.add(new Criterion(condition));
+        }
+
+        protected void addCriterion(String condition, Object value, String property) {
+            if (value == null) {
+                throw new RuntimeException("Value for " + property + " cannot be null");
+            }
+            criteria.add(new Criterion(condition, value));
+        }
+
+        protected void addCriterion(String condition, Object value1, Object value2, String property) {
+            if (value1 == null || value2 == null) {
+                throw new RuntimeException("Between values for " + property + " cannot be null");
+            }
+            criteria.add(new Criterion(condition, value1, value2));
+        }
+
+        public Criteria andIdIsNull() {
+            addCriterion("id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdIsNotNull() {
+            addCriterion("id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdEqualTo(String value) {
+            addCriterion("id =", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotEqualTo(String value) {
+            addCriterion("id <>", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdGreaterThan(String value) {
+            addCriterion("id >", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdGreaterThanOrEqualTo(String value) {
+            addCriterion("id >=", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLessThan(String value) {
+            addCriterion("id <", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLessThanOrEqualTo(String value) {
+            addCriterion("id <=", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLike(String value) {
+            addCriterion("id like", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotLike(String value) {
+            addCriterion("id not like", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdIn(List<String> values) {
+            addCriterion("id in", values, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotIn(List<String> values) {
+            addCriterion("id not in", values, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdBetween(String value1, String value2) {
+            addCriterion("id between", value1, value2, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotBetween(String value1, String value2) {
+            addCriterion("id not between", value1, value2, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andNameIsNull() {
+            addCriterion("name is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andNameIsNotNull() {
+            addCriterion("name is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andNameEqualTo(String value) {
+            addCriterion("name =", value, "name");
+            return (Criteria) this;
+        }
+
+        public Criteria andNameNotEqualTo(String value) {
+            addCriterion("name <>", value, "name");
+            return (Criteria) this;
+        }
+
+        public Criteria andNameGreaterThan(String value) {
+            addCriterion("name >", value, "name");
+            return (Criteria) this;
+        }
+
+        public Criteria andNameGreaterThanOrEqualTo(String value) {
+            addCriterion("name >=", value, "name");
+            return (Criteria) this;
+        }
+
+        public Criteria andNameLessThan(String value) {
+            addCriterion("name <", value, "name");
+            return (Criteria) this;
+        }
+
+        public Criteria andNameLessThanOrEqualTo(String value) {
+            addCriterion("name <=", value, "name");
+            return (Criteria) this;
+        }
+
+        public Criteria andNameLike(String value) {
+            addCriterion("name like", value, "name");
+            return (Criteria) this;
+        }
+
+        public Criteria andNameNotLike(String value) {
+            addCriterion("name not like", value, "name");
+            return (Criteria) this;
+        }
+
+        public Criteria andNameIn(List<String> values) {
+            addCriterion("name in", values, "name");
+            return (Criteria) this;
+        }
+
+        public Criteria andNameNotIn(List<String> values) {
+            addCriterion("name not in", values, "name");
+            return (Criteria) this;
+        }
+
+        public Criteria andNameBetween(String value1, String value2) {
+            addCriterion("name between", value1, value2, "name");
+            return (Criteria) this;
+        }
+
+        public Criteria andNameNotBetween(String value1, String value2) {
+            addCriterion("name not between", value1, value2, "name");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyIdIsNull() {
+            addCriterion("company_id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyIdIsNotNull() {
+            addCriterion("company_id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyIdEqualTo(String value) {
+            addCriterion("company_id =", value, "companyId");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyIdNotEqualTo(String value) {
+            addCriterion("company_id <>", value, "companyId");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyIdGreaterThan(String value) {
+            addCriterion("company_id >", value, "companyId");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyIdGreaterThanOrEqualTo(String value) {
+            addCriterion("company_id >=", value, "companyId");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyIdLessThan(String value) {
+            addCriterion("company_id <", value, "companyId");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyIdLessThanOrEqualTo(String value) {
+            addCriterion("company_id <=", value, "companyId");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyIdLike(String value) {
+            addCriterion("company_id like", value, "companyId");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyIdNotLike(String value) {
+            addCriterion("company_id not like", value, "companyId");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyIdIn(List<String> values) {
+            addCriterion("company_id in", values, "companyId");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyIdNotIn(List<String> values) {
+            addCriterion("company_id not in", values, "companyId");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyIdBetween(String value1, String value2) {
+            addCriterion("company_id between", value1, value2, "companyId");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyIdNotBetween(String value1, String value2) {
+            addCriterion("company_id not between", value1, value2, "companyId");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusIsNull() {
+            addCriterion("status is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusIsNotNull() {
+            addCriterion("status is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusEqualTo(Integer value) {
+            addCriterion("status =", value, "status");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusNotEqualTo(Integer value) {
+            addCriterion("status <>", value, "status");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusGreaterThan(Integer value) {
+            addCriterion("status >", value, "status");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusGreaterThanOrEqualTo(Integer value) {
+            addCriterion("status >=", value, "status");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusLessThan(Integer value) {
+            addCriterion("status <", value, "status");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusLessThanOrEqualTo(Integer value) {
+            addCriterion("status <=", value, "status");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusIn(List<Integer> values) {
+            addCriterion("status in", values, "status");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusNotIn(List<Integer> values) {
+            addCriterion("status not in", values, "status");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusBetween(Integer value1, Integer value2) {
+            addCriterion("status between", value1, value2, "status");
+            return (Criteria) this;
+        }
+
+        public Criteria andStatusNotBetween(Integer value1, Integer value2) {
+            addCriterion("status not between", value1, value2, "status");
+            return (Criteria) this;
+        }
+
+        public Criteria andOrderNumIsNull() {
+            addCriterion("order_num is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andOrderNumIsNotNull() {
+            addCriterion("order_num is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andOrderNumEqualTo(Integer value) {
+            addCriterion("order_num =", value, "orderNum");
+            return (Criteria) this;
+        }
+
+        public Criteria andOrderNumNotEqualTo(Integer value) {
+            addCriterion("order_num <>", value, "orderNum");
+            return (Criteria) this;
+        }
+
+        public Criteria andOrderNumGreaterThan(Integer value) {
+            addCriterion("order_num >", value, "orderNum");
+            return (Criteria) this;
+        }
+
+        public Criteria andOrderNumGreaterThanOrEqualTo(Integer value) {
+            addCriterion("order_num >=", value, "orderNum");
+            return (Criteria) this;
+        }
+
+        public Criteria andOrderNumLessThan(Integer value) {
+            addCriterion("order_num <", value, "orderNum");
+            return (Criteria) this;
+        }
+
+        public Criteria andOrderNumLessThanOrEqualTo(Integer value) {
+            addCriterion("order_num <=", value, "orderNum");
+            return (Criteria) this;
+        }
+
+        public Criteria andOrderNumIn(List<Integer> values) {
+            addCriterion("order_num in", values, "orderNum");
+            return (Criteria) this;
+        }
+
+        public Criteria andOrderNumNotIn(List<Integer> values) {
+            addCriterion("order_num not in", values, "orderNum");
+            return (Criteria) this;
+        }
+
+        public Criteria andOrderNumBetween(Integer value1, Integer value2) {
+            addCriterion("order_num between", value1, value2, "orderNum");
+            return (Criteria) this;
+        }
+
+        public Criteria andOrderNumNotBetween(Integer value1, Integer value2) {
+            addCriterion("order_num not between", value1, value2, "orderNum");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyNameIsNull() {
+            addCriterion("company_name is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyNameIsNotNull() {
+            addCriterion("company_name is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyNameEqualTo(String value) {
+            addCriterion("company_name =", value, "companyName");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyNameNotEqualTo(String value) {
+            addCriterion("company_name <>", value, "companyName");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyNameGreaterThan(String value) {
+            addCriterion("company_name >", value, "companyName");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyNameGreaterThanOrEqualTo(String value) {
+            addCriterion("company_name >=", value, "companyName");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyNameLessThan(String value) {
+            addCriterion("company_name <", value, "companyName");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyNameLessThanOrEqualTo(String value) {
+            addCriterion("company_name <=", value, "companyName");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyNameLike(String value) {
+            addCriterion("company_name like", value, "companyName");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyNameNotLike(String value) {
+            addCriterion("company_name not like", value, "companyName");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyNameIn(List<String> values) {
+            addCriterion("company_name in", values, "companyName");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyNameNotIn(List<String> values) {
+            addCriterion("company_name not in", values, "companyName");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyNameBetween(String value1, String value2) {
+            addCriterion("company_name between", value1, value2, "companyName");
+            return (Criteria) this;
+        }
+
+        public Criteria andCompanyNameNotBetween(String value1, String value2) {
+            addCriterion("company_name not between", value1, value2, "companyName");
+            return (Criteria) this;
+        }
+
+        public Criteria andCodeIsNull() {
+            addCriterion("code is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCodeIsNotNull() {
+            addCriterion("code is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCodeEqualTo(String value) {
+            addCriterion("code =", value, "code");
+            return (Criteria) this;
+        }
+
+        public Criteria andCodeNotEqualTo(String value) {
+            addCriterion("code <>", value, "code");
+            return (Criteria) this;
+        }
+
+        public Criteria andCodeGreaterThan(String value) {
+            addCriterion("code >", value, "code");
+            return (Criteria) this;
+        }
+
+        public Criteria andCodeGreaterThanOrEqualTo(String value) {
+            addCriterion("code >=", value, "code");
+            return (Criteria) this;
+        }
+
+        public Criteria andCodeLessThan(String value) {
+            addCriterion("code <", value, "code");
+            return (Criteria) this;
+        }
+
+        public Criteria andCodeLessThanOrEqualTo(String value) {
+            addCriterion("code <=", value, "code");
+            return (Criteria) this;
+        }
+
+        public Criteria andCodeLike(String value) {
+            addCriterion("code like", value, "code");
+            return (Criteria) this;
+        }
+
+        public Criteria andCodeNotLike(String value) {
+            addCriterion("code not like", value, "code");
+            return (Criteria) this;
+        }
+
+        public Criteria andCodeIn(List<String> values) {
+            addCriterion("code in", values, "code");
+            return (Criteria) this;
+        }
+
+        public Criteria andCodeNotIn(List<String> values) {
+            addCriterion("code not in", values, "code");
+            return (Criteria) this;
+        }
+
+        public Criteria andCodeBetween(String value1, String value2) {
+            addCriterion("code between", value1, value2, "code");
+            return (Criteria) this;
+        }
+
+        public Criteria andCodeNotBetween(String value1, String value2) {
+            addCriterion("code not between", value1, value2, "code");
+            return (Criteria) this;
+        }
+
+        public Criteria andParentIdIsNull() {
+            addCriterion("parent_id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andParentIdIsNotNull() {
+            addCriterion("parent_id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andParentIdEqualTo(String value) {
+            addCriterion("parent_id =", value, "parentId");
+            return (Criteria) this;
+        }
+
+        public Criteria andParentIdNotEqualTo(String value) {
+            addCriterion("parent_id <>", value, "parentId");
+            return (Criteria) this;
+        }
+
+        public Criteria andParentIdGreaterThan(String value) {
+            addCriterion("parent_id >", value, "parentId");
+            return (Criteria) this;
+        }
+
+        public Criteria andParentIdGreaterThanOrEqualTo(String value) {
+            addCriterion("parent_id >=", value, "parentId");
+            return (Criteria) this;
+        }
+
+        public Criteria andParentIdLessThan(String value) {
+            addCriterion("parent_id <", value, "parentId");
+            return (Criteria) this;
+        }
+
+        public Criteria andParentIdLessThanOrEqualTo(String value) {
+            addCriterion("parent_id <=", value, "parentId");
+            return (Criteria) this;
+        }
+
+        public Criteria andParentIdLike(String value) {
+            addCriterion("parent_id like", value, "parentId");
+            return (Criteria) this;
+        }
+
+        public Criteria andParentIdNotLike(String value) {
+            addCriterion("parent_id not like", value, "parentId");
+            return (Criteria) this;
+        }
+
+        public Criteria andParentIdIn(List<String> values) {
+            addCriterion("parent_id in", values, "parentId");
+            return (Criteria) this;
+        }
+
+        public Criteria andParentIdNotIn(List<String> values) {
+            addCriterion("parent_id not in", values, "parentId");
+            return (Criteria) this;
+        }
+
+        public Criteria andParentIdBetween(String value1, String value2) {
+            addCriterion("parent_id between", value1, value2, "parentId");
+            return (Criteria) this;
+        }
+
+        public Criteria andParentIdNotBetween(String value1, String value2) {
+            addCriterion("parent_id not between", value1, value2, "parentId");
+            return (Criteria) this;
+        }
+    }
+
+    /**
+     * This class was generated by MyBatis Generator.
+     * This class corresponds to the database table t_sys_windpowerstation
+     *
+     * @mbg.generated do_not_delete_during_merge
+     */
+    public static class Criteria extends GeneratedCriteria {
+
+        protected Criteria() {
+            super();
+        }
+    }
+
+    /**
+     * This class was generated by MyBatis Generator.
+     * This class corresponds to the database table t_sys_windpowerstation
+     *
+     * @mbg.generated
+     */
+    public static class Criterion {
+        private String condition;
+
+        private Object value;
+
+        private Object secondValue;
+
+        private boolean noValue;
+
+        private boolean singleValue;
+
+        private boolean betweenValue;
+
+        private boolean listValue;
+
+        private String typeHandler;
+
+        public String getCondition() {
+            return condition;
+        }
+
+        public Object getValue() {
+            return value;
+        }
+
+        public Object getSecondValue() {
+            return secondValue;
+        }
+
+        public boolean isNoValue() {
+            return noValue;
+        }
+
+        public boolean isSingleValue() {
+            return singleValue;
+        }
+
+        public boolean isBetweenValue() {
+            return betweenValue;
+        }
+
+        public boolean isListValue() {
+            return listValue;
+        }
+
+        public String getTypeHandler() {
+            return typeHandler;
+        }
+
+        protected Criterion(String condition) {
+            super();
+            this.condition = condition;
+            this.typeHandler = null;
+            this.noValue = true;
+        }
+
+        protected Criterion(String condition, Object value, String typeHandler) {
+            super();
+            this.condition = condition;
+            this.value = value;
+            this.typeHandler = typeHandler;
+            if (value instanceof List<?>) {
+                this.listValue = true;
+            } else {
+                this.singleValue = true;
+            }
+        }
+
+        protected Criterion(String condition, Object value) {
+            this(condition, value, null);
+        }
+
+        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
+            super();
+            this.condition = condition;
+            this.value = value;
+            this.secondValue = secondValue;
+            this.typeHandler = typeHandler;
+            this.betweenValue = true;
+        }
+
+        protected Criterion(String condition, Object value, Object secondValue) {
+            this(condition, value, secondValue, null);
+        }
+    }
+}

+ 1 - 1
web/monitor-web-sxjn/src/main/java/com/gyee/frame/service/SysDatasService.java

@@ -33,7 +33,7 @@ public class SysDatasService implements BaseService<TsysDatas, TsysDatasExample>
 	 */
 	 public PageInfo<TsysDatas> list(Tablepar tablepar,String searchText){
 	        TsysDatasExample testExample=new TsysDatasExample();
-	        testExample.setOrderByClause("id+0 DESC");
+	        testExample.setOrderByClause("id DESC");
 	        if(searchText!=null&&!"".equals(searchText)){
 	        	testExample.createCriteria().andIdLike("%"+searchText+"%");
 	        }

+ 1 - 1
web/monitor-web-sxjn/src/main/java/com/gyee/frame/service/SysDictTypeService.java

@@ -42,7 +42,7 @@ public class SysDictTypeService implements BaseService<TSysDictType, TSysDictTyp
 	 */
 	 public PageInfo<TSysDictType> list(Tablepar tablepar,String name){
 	        TSysDictTypeExample testExample=new TSysDictTypeExample();
-	        testExample.setOrderByClause("id+0 desc");
+	        testExample.setOrderByClause("id desc");
 	        if(name!=null&&!"".equals(name)){
 	        	testExample.createCriteria().andDictNameLike("%"+name+"%");
 	        }

+ 1 - 1
web/monitor-web-sxjn/src/main/java/com/gyee/frame/service/SysFileService.java

@@ -50,7 +50,7 @@ public class SysFileService implements BaseService<TsysFile, TsysFileExample>{
 	 */
 	 public PageInfo<TsysFile> list(Tablepar tablepar,String searchText){
 	        TsysFileExample testExample=new TsysFileExample();
-	        testExample.setOrderByClause("id+0 DESC");
+	        testExample.setOrderByClause("id DESC");
 	        if(searchText!=null&&!"".equals(searchText)){
 	        	testExample.createCriteria().andFileNameLike("%"+searchText+"%");
 	        }

+ 137 - 0
web/monitor-web-sxjn/src/main/java/com/gyee/frame/service/SysInterUrlService.java

@@ -0,0 +1,137 @@
+package com.gyee.frame.service;
+
+
+import com.github.pagehelper.PageHelper;
+import com.github.pagehelper.PageInfo;
+import com.gyee.frame.common.base.BaseService;
+import com.gyee.frame.common.support.ConvertUtil;
+import com.gyee.frame.mapper.auto.SysInterUrlMapper;
+import com.gyee.frame.model.auto.SysInterUrl;
+import com.gyee.frame.model.auto.SysInterUrlExample;
+import com.gyee.frame.model.custom.Tablepar;
+import com.gyee.frame.util.SnowflakeIdWorker;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * 拦截url表 SysInterUrlService
+ * @Title: SysInterUrlService.java
+ * @Package com.fc.v2.service
+ * @author fuce_自动生成
+ * @email 115889198@qq.com
+ * @date 2020-01-05 01:48:22
+ **/
+@Service
+public class SysInterUrlService implements BaseService<SysInterUrl, SysInterUrlExample> {
+	@Autowired
+	private SysInterUrlMapper sysInterUrlMapper;
+	
+      	   	      	      	      	      	
+	/**
+	 * 分页查询
+	 * @param pageNum
+	 * @param pageSize
+	 * @return
+	 */
+	 public PageInfo<SysInterUrl> list(Tablepar tablepar, String name){
+	        SysInterUrlExample testExample=new SysInterUrlExample();
+	        testExample.setOrderByClause("id ASC");
+	        if(name!=null&&!"".equals(name)){
+	        	testExample.createCriteria().andInterNameLike("%"+name+"%");
+	        }
+
+	        PageHelper.startPage(tablepar.getPageNum(), tablepar.getPageSize());
+	        List<SysInterUrl> list= sysInterUrlMapper.selectByExample(testExample);
+	        PageInfo<SysInterUrl> pageInfo = new PageInfo<SysInterUrl>(list);
+	        return  pageInfo;
+	 }
+
+	@Override
+	public int deleteByPrimaryKey(String ids) {
+				
+			List<String> lista= ConvertUtil.toListStrArray(ids);
+			SysInterUrlExample example=new SysInterUrlExample();
+			example.createCriteria().andIdIn(lista);
+			return sysInterUrlMapper.deleteByExample(example);
+			
+				
+	}
+	
+	
+	@Override
+	public SysInterUrl selectByPrimaryKey(String id) {
+				
+			return sysInterUrlMapper.selectByPrimaryKey(id);
+				
+	}
+
+	
+	@Override
+	public int updateByPrimaryKeySelective(SysInterUrl record) {
+		return sysInterUrlMapper.updateByPrimaryKeySelective(record);
+	}
+	
+	
+	/**
+	 * 添加
+	 */
+	@Override
+	public int insertSelective(SysInterUrl record) {
+				
+		//添加雪花主键id
+		record.setId(SnowflakeIdWorker.getUUID());
+			
+				
+		return sysInterUrlMapper.insertSelective(record);
+	}
+	
+	
+	@Override
+	public int updateByExampleSelective(SysInterUrl record, SysInterUrlExample example) {
+		
+		return sysInterUrlMapper.updateByExampleSelective(record, example);
+	}
+
+	
+	@Override
+	public int updateByExample(SysInterUrl record, SysInterUrlExample example) {
+		
+		return sysInterUrlMapper.updateByExample(record, example);
+	}
+
+	@Override
+	public List<SysInterUrl> selectByExample(SysInterUrlExample example) {
+		
+		return sysInterUrlMapper.selectByExample(example);
+	}
+
+	
+	@Override
+	public long countByExample(SysInterUrlExample example) {
+		
+		return sysInterUrlMapper.countByExample(example);
+	}
+
+	
+	@Override
+	public int deleteByExample(SysInterUrlExample example) {
+		
+		return sysInterUrlMapper.deleteByExample(example);
+	}
+	
+	/**
+	 * 检查name
+	 * @param sysInterUrl
+	 * @return
+	 */
+	public int checkNameUnique(SysInterUrl sysInterUrl){
+		SysInterUrlExample example=new SysInterUrlExample();
+		example.createCriteria().andInterNameEqualTo(sysInterUrl.getInterName());
+		List<SysInterUrl> list=sysInterUrlMapper.selectByExample(example);
+		return list.size();
+	}
+
+
+}

+ 1 - 1
web/monitor-web-sxjn/src/main/java/com/gyee/frame/service/SysOperLogService.java

@@ -28,7 +28,7 @@ public class SysOperLogService implements BaseService<TsysOperLog, TsysOperLogEx
 	 */
 	 public PageInfo<TsysOperLog> list(Tablepar tablepar,String searchText){
 	        TsysOperLogExample testExample=new TsysOperLogExample();
-	        testExample.setOrderByClause("id+0 DESC");
+	        testExample.setOrderByClause("id DESC");
 	        if(searchText!=null&&!"".equals(searchText)){
 	        	testExample.createCriteria().andTitleLike("%"+searchText+"%");
 	        }

+ 1 - 1
web/monitor-web-sxjn/src/main/java/com/gyee/frame/service/SysRoleService.java

@@ -41,7 +41,7 @@ public class SysRoleService implements BaseService<TsysRole, TsysRoleExample> {
 	 */
 	 public PageInfo<TsysRole> list(Tablepar tablepar,String searchText){
 	        TsysRoleExample testExample=new TsysRoleExample();
-	        testExample.setOrderByClause("id+0 DESC");
+	        testExample.setOrderByClause("id DESC");
 	        if(searchText!=null&&!"".equals(searchText)){
 	        	testExample.createCriteria().andNameLike("%"+searchText+"%");
 	        }

+ 1 - 1
web/monitor-web-sxjn/src/main/java/com/gyee/frame/service/SysUserService.java

@@ -58,7 +58,7 @@ public class SysUserService implements BaseService<TsysUser, TsysUserExample>{
 	 */
 	 public PageInfo<TsysUser> list(Tablepar tablepar,String username){
 //	        TsysUserExample testExample=new TsysUserExample();
-//	        testExample.setOrderByClause("id+0 DESC");
+//	        testExample.setOrderByClause("id DESC");
 //	        if(username!=null&&!"".equals(username)){
 //	        	testExample.createCriteria().andUsernameLike("%"+username+"%");
 //	        }

+ 196 - 0
web/monitor-web-sxjn/src/main/java/com/gyee/frame/service/SysWindpowerstationService.java

@@ -0,0 +1,196 @@
+package com.gyee.frame.service;
+
+import cn.hutool.core.util.StrUtil;
+import com.github.pagehelper.PageHelper;
+import com.github.pagehelper.PageInfo;
+import com.gyee.frame.common.base.BaseService;
+import com.gyee.frame.common.support.ConvertUtil;
+import com.gyee.frame.mapper.auto.SysWindpowerstationMapper;
+import com.gyee.frame.model.auto.SysWindpowerstation;
+import com.gyee.frame.model.auto.SysWindpowerstationExample;
+import com.gyee.frame.model.custom.BootstrapTree;
+import com.gyee.frame.model.custom.Tablepar;
+import com.gyee.frame.util.SnowflakeIdWorker;
+import com.gyee.frame.util.StringUtils;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+
+/**
+ * 部门表 SysWindpowerstationService
+ * 
+ * @Title: SysWindpowerstationService.java 
+ * @Package com.gyee.frame.service 
+ * @author fuce_自动生成
+ * @email 115889198@qq.com
+ * @date 2020-04-17 13:12:58  
+ **/
+@Service
+public class SysWindpowerstationService implements BaseService<SysWindpowerstation, SysWindpowerstationExample> {
+	@Resource
+	private SysWindpowerstationMapper sysWindpowerstationMapper;
+
+
+	public PageInfo<SysWindpowerstation> list(Tablepar tablepar, String name) {
+		SysWindpowerstationExample testExample = new SysWindpowerstationExample();
+		testExample.setOrderByClause("id ASC");
+		if (name != null && !"".equals(name)) {
+			testExample.createCriteria().andCompanyNameEqualTo("%" + name + "%");
+		}
+		if (StrUtil.isNotEmpty(tablepar.getOrderByColumn())) {
+			testExample.setOrderByClause(
+					StringUtils.toUnderScoreCase(tablepar.getOrderByColumn()) + " " + tablepar.getIsAsc());
+		}
+		PageHelper.startPage(tablepar.getPageNum(), tablepar.getPageSize());
+		List<SysWindpowerstation> list = sysWindpowerstationMapper.selectByExample(testExample);
+		PageInfo<SysWindpowerstation> pageInfo = new PageInfo<SysWindpowerstation>(list);
+		return pageInfo;
+	}
+
+	public List<SysWindpowerstation> list2(String searchText) {
+		SysWindpowerstationExample testExample = new SysWindpowerstationExample();
+		testExample.setOrderByClause("order_num   ASC,order_num  ASC");
+		if (searchText != null && !"".equals(searchText)) {
+			testExample.createCriteria().andCompanyNameEqualTo("%" + searchText + "%");
+		}
+		List<SysWindpowerstation> list = sysWindpowerstationMapper.selectByExample(testExample);
+		return list;
+	}
+
+	@Override
+	public int deleteByPrimaryKey(String ids) {
+
+        String[] integers = ConvertUtil.toStrArray(",", ids);
+		List<String> stringB = Arrays.asList(integers);
+		SysWindpowerstationExample example = new SysWindpowerstationExample();
+		example.createCriteria().andIdIn(stringB);
+		return sysWindpowerstationMapper.deleteByExample(example);
+
+	}
+
+	@Override
+	public SysWindpowerstation selectByPrimaryKey(String id) {
+
+
+		return sysWindpowerstationMapper.selectByPrimaryKey(id);
+
+	}
+
+	@Override
+	public int updateByPrimaryKeySelective(SysWindpowerstation record) {
+		return sysWindpowerstationMapper.updateByPrimaryKeySelective(record);
+	}
+
+	/**
+	 * 添加
+	 */
+	@Override
+	public int insertSelective(SysWindpowerstation record) {
+
+        record.setId(SnowflakeIdWorker.getUUID());
+
+		return sysWindpowerstationMapper.insertSelective(record);
+	}
+
+	@Override
+	public int updateByExampleSelective(SysWindpowerstation record, SysWindpowerstationExample example) {
+
+		return sysWindpowerstationMapper.updateByExampleSelective(record, example);
+	}
+
+	@Override
+	public int updateByExample(SysWindpowerstation record, SysWindpowerstationExample example) {
+
+		return sysWindpowerstationMapper.updateByExample(record, example);
+	}
+
+	@Override
+	public List<SysWindpowerstation> selectByExample(SysWindpowerstationExample example) {
+
+		return sysWindpowerstationMapper.selectByExample(example);
+	}
+
+	@Override
+	public long countByExample(SysWindpowerstationExample example) {
+
+		return sysWindpowerstationMapper.countByExample(example);
+	}
+
+	@Override
+	public int deleteByExample(SysWindpowerstationExample example) {
+
+		return sysWindpowerstationMapper.deleteByExample(example);
+	}
+
+	/**
+	 * 检查name
+	 * 
+	 * @param sysWindpowerstation
+	 * @return
+	 */
+	public int checkNameUnique(SysWindpowerstation sysWindpowerstation) {
+		SysWindpowerstationExample example = new SysWindpowerstationExample();
+		example.createCriteria().andCompanyNameEqualTo(sysWindpowerstation.getCompanyName());
+		List<SysWindpowerstation> list = sysWindpowerstationMapper.selectByExample(example);
+		return list.size();
+	}
+	
+	
+
+	
+	
+	/**
+	 * 根据用户id获取用户角色如果用户为null 获取所有权限
+	 * @return
+	 */
+	public List<SysWindpowerstation> getall(){
+		SysWindpowerstationExample example = new SysWindpowerstationExample();
+		example.setOrderByClause("order_num asc");
+		return  sysWindpowerstationMapper.selectByExample(example);
+		
+	}
+
+    /**
+     * 获取树
+     * @param menuList
+     * @param parentId
+     * @return
+     */
+    private static List<BootstrapTree> getbooBootstrapTreePerm(List<SysWindpowerstation> menuList, String parentId){
+        List<BootstrapTree> treeList = new ArrayList<>();
+        List<BootstrapTree> childList = null;
+        for(SysWindpowerstation p : menuList) {
+            p.setParentId(p.getParentId()==null||p.getParentId().trim().equals("")? "0":p.getParentId());
+            if(p.getParentId().trim().equals(parentId)) {
+                if(p.getChildCount()!=null&&p.getChildCount()>0) {
+                    childList = getbooBootstrapTreePerm(menuList, String.valueOf(p.getId()));
+                }
+                BootstrapTree bootstrapTree = new BootstrapTree(p.getName(), "", "", String.valueOf(p.getCode()), "",0,childList,p.getName(),p.getStatus());
+                treeList.add(bootstrapTree);
+                childList = null;
+            }
+        }
+        return treeList.size() >0 ? treeList : null;
+    }
+
+    /**
+     * 获取转换成bootstarp的权限数据
+     * @return
+     */
+    public BootstrapTree getbooBootstrapTreePerm(){
+        List<BootstrapTree> treeList = new ArrayList<BootstrapTree>();
+        List<SysWindpowerstation> menuList =  getall();
+        treeList = getbooBootstrapTreePerm(menuList,"0");
+        if(treeList!=null&&treeList.size()==1) {
+            return treeList.get(0);
+        }
+        return new BootstrapTree("菜单", "fa fa-home", "", "0","###",0,treeList,"",0);
+    }
+
+
+
+	
+}

+ 1 - 1
web/monitor-web-sxjn/src/main/java/com/gyee/frame/service/VueRoleService.java

@@ -40,7 +40,7 @@ public class VueRoleService implements BaseService<TvueRole, TvueRoleExample> {
 	 */
 	 public PageInfo<TvueRole> list(Tablepar tablepar,String searchText){
 	        TvueRoleExample testExample=new TvueRoleExample();
-	        testExample.setOrderByClause("id+0 DESC");
+	        testExample.setOrderByClause("id DESC");
 	        if(searchText!=null&&!"".equals(searchText)){
 	        	testExample.createCriteria().andNameLike("%"+searchText+"%");
 	        }

+ 1 - 1
web/monitor-web-sxjn/src/main/java/com/gyee/frame/service/VueUserService.java

@@ -57,7 +57,7 @@ public class VueUserService implements BaseService<TvueUser, TvueUserExample>{
 	 */
 	 public PageInfo<TvueUser> list(Tablepar tablepar,String username){
 //	        TvueUserExample testExample=new TvueUserExample();
-//	        testExample.setOrderByClause("id+0 DESC");
+//	        testExample.setOrderByClause("id DESC");
 //	        if(username!=null&&!"".equals(username)){
 //	        	testExample.createCriteria().andUsernameLike("%"+username+"%");
 //	        }

+ 1 - 1
web/monitor-web-sxjn/src/main/java/com/gyee/frame/service/initialpoint/IinitialPoint.java

@@ -14,7 +14,7 @@ public interface IinitialPoint {
      * isGF 是否包含光伏
      * @throws Exception
      */
-    public void initalFc(boolean isGf) throws IOException;
+    public void initalFc() throws IOException;
     /**
      * 初始化升压站
      * @throws Exception

+ 4 - 3
web/monitor-web-sxjn/src/main/java/com/gyee/frame/service/initialpoint/InitialPointEdosHfService.java

@@ -45,7 +45,7 @@ public class InitialPointEdosHfService implements  IinitialPoint{
     private final  String FC="FC";
     private final  String GF="GF";
     @Override
-    public void initalFc(boolean isGf) throws IOException {
+    public void initalFc() throws IOException {
 
 
 
@@ -276,8 +276,8 @@ public class InitialPointEdosHfService implements  IinitialPoint{
         }
 
 
-//        }
-
+////        }
+//
 
 
         /*********************************************场站、项目、线路测点生成*****************************************************/
@@ -285,6 +285,7 @@ public class InitialPointEdosHfService implements  IinitialPoint{
         for (Windpowerstation wp:InitialRunner.wpallls)
         {
 
+
             if(!stpointls.isEmpty())
             {
 

+ 1 - 1
web/monitor-web-sxjn/src/main/java/com/gyee/frame/service/initialpoint/InitialPointEdosService.java

@@ -43,7 +43,7 @@ public class InitialPointEdosService implements  IinitialPoint{
     private final String CFT="CFT";
     private final String HEAD="GDHF";
     @Override
-    public void initalFc(boolean isGf) throws IOException {
+    public void initalFc() throws IOException {
 
 
 

+ 206 - 202
web/monitor-web-sxjn/src/main/java/com/gyee/frame/service/initialpoint/InitialPointGoldenService.java

@@ -57,7 +57,7 @@ public class InitialPointGoldenService implements  IinitialPoint{
     private final  String FC="FC";
     private final  String GF="GF";
     @Override
-    public void initalFc(boolean isGf) throws IOException {
+    public void initalFc() throws IOException {
 
 
 
@@ -76,217 +76,217 @@ public class InitialPointGoldenService implements  IinitialPoint{
 
 
 
-        if(!regions.isEmpty())
-        {
-
-
-            for(Region re:regions)
-            {
-                List<Companys> companys= companysService.getCompanysListByRId(re.getId());
-                if(!companys.isEmpty())
-                {
-                    for(Companys cs:companys)
-                    {
-                        StringBuilder sba=new StringBuilder();
-                        sba.append(re.getCode()).append("_").append(cs.getId()).append("_");
-/********************************************区域公司测点**************************************************/
-                        List<Windpowerstationpointnew>  points=new ArrayList<>();
-                        for(int i=0;i<stpointls.size();i++)
-                        {
-
-
-                            Windpowerstationstandardpoint stp=stpointls.get(i);
-                            StringBuilder sb =new StringBuilder();
-                            StringBuilder sbtable =new StringBuilder();
-//                            sbtable.append(re.getCode()).append(cs.getId());
-                            sb.append(String.valueOf(sba));
-                            sb.append("XXXX_XX_XX_XX_XXX_");
-                            sb.append(CI);
-                            sb.append(stp.getOrdernum());
-                            if(stp.getCode().equals(CI))
-                            {
-                                sbtable.append("JSFW.");
-                                sbtable.append(sb);
-                            }
-                            Windpowerstationpointnew po=new Windpowerstationpointnew();
-                            po.setId(StringUtils.getUUID());
-//                            po.setCode(V2Config.getInitialcode());
-                            po.setCode(String.valueOf(sbtable));
-                            sb =new StringBuilder();
-                            sb.append(re.getName()).append(stp.getName());
-                            po.setName(String.valueOf(sb));
-                            po.setModel(null);
-                            po.setModelid(null);
-
-                            StringBuilder tempsb=new StringBuilder();
-
-                            if(StringUtils.notEmp(re.getCode()))
-                            {
-                                tempsb.append(re.getCode()).append("0");
-                            }else
-                            {
-                                tempsb.append("0");
-                            }
-                            po.setWindpowerstationid(String.valueOf(tempsb));
-                            po.setUniformcode(stp.getUniformcode());
-
-
-
-                            if(stp.getCode().equals(CI))
-                            {
-                                sb =new StringBuilder();
-                                sb.append(re.getCode()).append(cs.getId()).append(".JSFW");
-                                po.setRealtimeid(String.valueOf(sb));
-                            }
-//                            else
+//        if(!regions.isEmpty())
+//        {
+//
+//
+//            for(Region re:regions)
+//            {
+//                List<Companys> companys= companysService.getCompanysListByRId(re.getId());
+//                if(!companys.isEmpty())
+//                {
+//                    for(Companys cs:companys)
+//                    {
+//                        StringBuilder sba=new StringBuilder();
+//                        sba.append(re.getCode()).append("_").append(cs.getId()).append("_");
+///********************************************区域公司测点**************************************************/
+//                        List<Windpowerstationpointnew>  points=new ArrayList<>();
+//                        for(int i=0;i<stpointls.size();i++)
+//                        {
+//
+//
+//                            Windpowerstationstandardpoint stp=stpointls.get(i);
+//                            StringBuilder sb =new StringBuilder();
+//                            StringBuilder sbtable =new StringBuilder();
+////                            sbtable.append(re.getCode()).append(cs.getId());
+//                            sb.append(String.valueOf(sba));
+//                            sb.append("XXXX_XX_XX_XX_XXX_");
+//                            sb.append(CI);
+//                            sb.append(stp.getOrdernum());
+//                            if(stp.getCode().equals(CI))
+//                            {
+//                                sbtable.append("JSFW.");
+//                                sbtable.append(sb);
+//                            }
+//                            Windpowerstationpointnew po=new Windpowerstationpointnew();
+//                            po.setId(StringUtils.getUUID());
+////                            po.setCode(V2Config.getInitialcode());
+//                            po.setCode(String.valueOf(sbtable));
+//                            sb =new StringBuilder();
+//                            sb.append(re.getName()).append(stp.getName());
+//                            po.setName(String.valueOf(sb));
+//                            po.setModel(null);
+//                            po.setModelid(null);
+//
+//                            StringBuilder tempsb=new StringBuilder();
+//
+//                            if(StringUtils.notEmp(re.getCode()))
+//                            {
+//                                tempsb.append(re.getCode()).append("0");
+//                            }else
+//                            {
+//                                tempsb.append("0");
+//                            }
+//                            po.setWindpowerstationid(String.valueOf(tempsb));
+//                            po.setUniformcode(stp.getUniformcode());
+//
+//
+//
+//                            if(stp.getCode().equals(CI))
 //                            {
 //                                sb =new StringBuilder();
-//                                sb.append(re.getCode()).append(cs.getId()).append(".JSFWDD");
+//                                sb.append(re.getCode()).append(cs.getId()).append(".JSFW");
 //                                po.setRealtimeid(String.valueOf(sb));
 //                            }
-
-
-
-                            points.add(po);
-                        }
-
-                        allpoints.addAll(points);
-                        // windPowerstationTestingPointService.insertBatch(points);
-
-/*******************************************区域公司测点*******************************************************/
-/********************************************风电场公司测点**************************************************/
-                        points=new ArrayList<>();
-                        for(int i=0;i<stpointls.size();i++)
-                        {
-
-
-                            Windpowerstationstandardpoint stp=stpointls.get(i);
-                            StringBuilder sb =new StringBuilder();
-                            StringBuilder sbtable =new StringBuilder();
-//                            sbtable.append(re.getCode()).append(cs.getId());
-                            sb.append(String.valueOf(sba));
-                            sb.append(re.getCode()).append("F_XX_XX_XX_XXX_");
-                            sb.append(CI);
-                            sb.append(stp.getOrdernum());
-                            if(stp.getCode().equals(CI))
-                            {
-//                                sbtable.append("FC").append("JSFW.");
-                                sbtable.append("JSFW.");
-                                sbtable.append(sb);
-                            }
-                            Windpowerstationpointnew po=new Windpowerstationpointnew();
-                            po.setId(StringUtils.getUUID());
-//                            po.setCode(V2Config.getInitialcode());
-                            po.setCode(String.valueOf(sbtable));
-                            sb =new StringBuilder();
-                            sb.append(re.getName()).append("风场").append(stp.getName());
-                            po.setName(String.valueOf(sb));
-                            po.setModel(null);
-                            po.setModelid(null);
-
-                            StringBuilder tempsb=new StringBuilder();
-                            if(StringUtils.notEmp(re.getCode()))
-                            {
-                                tempsb.append(re.getCode()).append("-1");
-                            }else
-                            {
-                                tempsb.append("-1");
-                            }
-                            po.setWindpowerstationid(String.valueOf(tempsb));
-                            po.setUniformcode(stp.getUniformcode());
-
-
-
-                            if(stp.getCode().equals(CI))
-                            {
-                                sb =new StringBuilder();
-                                sb.append(re.getCode()).append(cs.getId()).append(".JSFW").append("FC");
-                                po.setRealtimeid(String.valueOf(sb));
-                            }
-//                            else
+////                            else
+////                            {
+////                                sb =new StringBuilder();
+////                                sb.append(re.getCode()).append(cs.getId()).append(".JSFWDD");
+////                                po.setRealtimeid(String.valueOf(sb));
+////                            }
+//
+//
+//
+//                            points.add(po);
+//                        }
+//
+//                        allpoints.addAll(points);
+//                        // windPowerstationTestingPointService.insertBatch(points);
+//
+///*******************************************区域公司测点*******************************************************/
+///********************************************风电场公司测点**************************************************/
+//                        points=new ArrayList<>();
+//                        for(int i=0;i<stpointls.size();i++)
+//                        {
+//
+//
+//                            Windpowerstationstandardpoint stp=stpointls.get(i);
+//                            StringBuilder sb =new StringBuilder();
+//                            StringBuilder sbtable =new StringBuilder();
+////                            sbtable.append(re.getCode()).append(cs.getId());
+//                            sb.append(String.valueOf(sba));
+//                            sb.append(re.getCode()).append("F_XX_XX_XX_XXX_");
+//                            sb.append(CI);
+//                            sb.append(stp.getOrdernum());
+//                            if(stp.getCode().equals(CI))
+//                            {
+////                                sbtable.append("FC").append("JSFW.");
+//                                sbtable.append("JSFW.");
+//                                sbtable.append(sb);
+//                            }
+//                            Windpowerstationpointnew po=new Windpowerstationpointnew();
+//                            po.setId(StringUtils.getUUID());
+////                            po.setCode(V2Config.getInitialcode());
+//                            po.setCode(String.valueOf(sbtable));
+//                            sb =new StringBuilder();
+//                            sb.append(re.getName()).append("风场").append(stp.getName());
+//                            po.setName(String.valueOf(sb));
+//                            po.setModel(null);
+//                            po.setModelid(null);
+//
+//                            StringBuilder tempsb=new StringBuilder();
+//                            if(StringUtils.notEmp(re.getCode()))
+//                            {
+//                                tempsb.append(re.getCode()).append("-1");
+//                            }else
+//                            {
+//                                tempsb.append("-1");
+//                            }
+//                            po.setWindpowerstationid(String.valueOf(tempsb));
+//                            po.setUniformcode(stp.getUniformcode());
+//
+//
+//
+//                            if(stp.getCode().equals(CI))
 //                            {
 //                                sb =new StringBuilder();
-//                                sb.append(re.getCode()).append(cs.getId()).append(".JSFWDD");
+//                                sb.append(re.getCode()).append(cs.getId()).append(".JSFW").append("FC");
 //                                po.setRealtimeid(String.valueOf(sb));
 //                            }
-
-
-
-                            points.add(po);
-                        }
-
-                        allpoints.addAll(points);
-                        // windPowerstationTestingPointService.insertBatch(points);
-
-                        /*******************************************风电测点生成*******************************************************/
-
-
-/*********************************************光伏测点生成*****************************************************/
-
-                        points=new ArrayList<>();
-                        for(int i=0;i<stpointls.size();i++)
-                        {
-
-
-                            Windpowerstationstandardpoint stp=stpointls.get(i);
-                            StringBuilder sb =new StringBuilder();
-                            StringBuilder sbtable =new StringBuilder();
-//                            sbtable.append(re.getCode()).append(cs.getId());
-                            sb.append(String.valueOf(sba));
-                            sb.append(re.getCode()).append("G_XX_XX_XX_XXX_");
-                            sb.append(CI);
-                            sb.append(stp.getOrdernum());
-                            if(stp.getCode().equals(CI))
-                            {
-//                                sbtable.append("GF").append("JSFW.");
-                                sbtable.append("JSFW.");
-                                sbtable.append(sb);
-                            }
-                            Windpowerstationpointnew po=new Windpowerstationpointnew();
-                            po.setId(StringUtils.getUUID());
-//                            po.setCode(V2Config.getInitialcode());
-                            po.setCode(String.valueOf(sbtable));
-                            sb =new StringBuilder();
-                            sb.append(re.getName()).append("光伏").append(stp.getName());
-                            po.setName(String.valueOf(sb));
-                            po.setModel(null);
-                            po.setModelid(null);
-                            StringBuilder tempsb=new StringBuilder();
-
-                            if(StringUtils.notEmp(re.getCode()))
-                            {
-                                tempsb.append(re.getCode()).append("-2");
-                            }else
-                            {
-                                tempsb.append("-2");
-                            }
-
-                            po.setWindpowerstationid(String.valueOf(tempsb));
-                            po.setUniformcode(stp.getUniformcode());
-
-                            if(stp.getCode().equals(CI))
-                            {
-                                sb =new StringBuilder();
-                                sb.append(re.getCode()).append(cs.getId()).append(".JSFW").append("GF");
-                                po.setRealtimeid(String.valueOf(sb));
-                            }
-//                            else
+////                            else
+////                            {
+////                                sb =new StringBuilder();
+////                                sb.append(re.getCode()).append(cs.getId()).append(".JSFWDD");
+////                                po.setRealtimeid(String.valueOf(sb));
+////                            }
+//
+//
+//
+//                            points.add(po);
+//                        }
+//
+//                        allpoints.addAll(points);
+//                        // windPowerstationTestingPointService.insertBatch(points);
+//
+//                        /*******************************************风电测点生成*******************************************************/
+//
+//
+///*********************************************光伏测点生成*****************************************************/
+//
+//                        points=new ArrayList<>();
+//                        for(int i=0;i<stpointls.size();i++)
+//                        {
+//
+//
+//                            Windpowerstationstandardpoint stp=stpointls.get(i);
+//                            StringBuilder sb =new StringBuilder();
+//                            StringBuilder sbtable =new StringBuilder();
+////                            sbtable.append(re.getCode()).append(cs.getId());
+//                            sb.append(String.valueOf(sba));
+//                            sb.append(re.getCode()).append("G_XX_XX_XX_XXX_");
+//                            sb.append(CI);
+//                            sb.append(stp.getOrdernum());
+//                            if(stp.getCode().equals(CI))
+//                            {
+////                                sbtable.append("GF").append("JSFW.");
+//                                sbtable.append("JSFW.");
+//                                sbtable.append(sb);
+//                            }
+//                            Windpowerstationpointnew po=new Windpowerstationpointnew();
+//                            po.setId(StringUtils.getUUID());
+////                            po.setCode(V2Config.getInitialcode());
+//                            po.setCode(String.valueOf(sbtable));
+//                            sb =new StringBuilder();
+//                            sb.append(re.getName()).append("光伏").append(stp.getName());
+//                            po.setName(String.valueOf(sb));
+//                            po.setModel(null);
+//                            po.setModelid(null);
+//                            StringBuilder tempsb=new StringBuilder();
+//
+//                            if(StringUtils.notEmp(re.getCode()))
+//                            {
+//                                tempsb.append(re.getCode()).append("-2");
+//                            }else
+//                            {
+//                                tempsb.append("-2");
+//                            }
+//
+//                            po.setWindpowerstationid(String.valueOf(tempsb));
+//                            po.setUniformcode(stp.getUniformcode());
+//
+//                            if(stp.getCode().equals(CI))
 //                            {
 //                                sb =new StringBuilder();
-//                                sb.append(re.getCode()).append(cs.getId()).append(".JSFWDD");
+//                                sb.append(re.getCode()).append(cs.getId()).append(".JSFW").append("GF");
 //                                po.setRealtimeid(String.valueOf(sb));
 //                            }
-
-
-                            points.add(po);
-                        }
-
-                        allpoints.addAll(points);
-                        // windPowerstationTestingPointService.insertBatch(points);
-                    }
-                }
-            }
-        }
+////                            else
+////                            {
+////                                sb =new StringBuilder();
+////                                sb.append(re.getCode()).append(cs.getId()).append(".JSFWDD");
+////                                po.setRealtimeid(String.valueOf(sb));
+////                            }
+//
+//
+//                            points.add(po);
+//                        }
+//
+//                        allpoints.addAll(points);
+//                        // windPowerstationTestingPointService.insertBatch(points);
+//                    }
+//                }
+//            }
+//        }
 
 
 //        }
@@ -298,6 +298,10 @@ public class InitialPointGoldenService implements  IinitialPoint{
         for (Windpowerstation wp:InitialRunner.wpallls)
         {
 
+            if(!wp.getId().equals("SY_GDC"))
+            {
+                continue;
+            }
             if(wp.getId().endsWith("FDC") && !stpointls.isEmpty())
             {
 
@@ -604,7 +608,7 @@ public class InitialPointGoldenService implements  IinitialPoint{
     private void createPjPointsGf(Windpowerstation wp, List<PhotovoltaicStandardPoint> stpointls,List<Windpowerstationpointnew> allpoints) {
 
 
-        for(Project pj:InitialRunner.pjls)
+        for(Project pj:InitialRunner.pjallls)
         {
             if(pj.getWindpowerstationid().equals(wp.getId()))
             {
@@ -800,7 +804,7 @@ public class InitialPointGoldenService implements  IinitialPoint{
     }
     private void createLnPointsGf(Windpowerstation wp, List<PhotovoltaicStandardPoint> stpointls,List<Windpowerstationpointnew> allpoints) {
 
-        for(Line ln:InitialRunner.linels)
+        for(Line ln:InitialRunner.lineallls)
         {
             if(InitialRunner.pjmap.containsKey(ln.getProjectid()))
             {

+ 10 - 1
web/monitor-web-sxjn/src/main/java/com/gyee/frame/service/websocket/CftInfoPushService.java

@@ -60,7 +60,7 @@ public class CftInfoPushService {
 /*************************************************测风塔*************************************************************/
 
             Map<String, Double> cftmap = new HashMap<>();
-            String[] cftstrs=Constant.TPOINT_WP_CFT;
+            String[] cftstrs= Constant.TPOINT_WP_CFT;
 
             for(int i=0;i<cftstrs.length;i++)
             {
@@ -73,6 +73,15 @@ public class CftInfoPushService {
                 }
             }
 
+//            String[] cftstrs=Constant.TPOINT_WP_CFT_GJYPOINT;
+//            String[] cftcodestrs=Constant.TPOINT_WP_CFT_GJY;
+//            for(int i=0;i<cftstrs.length;i++)
+//            {
+//                PointData value = realApiUtil.getRealData(cftstrs[i]);
+//                cftmap.put(cftcodestrs[i],StringUtils.round(value.getPointValueInDouble(),2));
+//            }
+//            cftmap.put("KQMD",2.13);
+
             map.put("cftmap", cftmap);
 /*************************************************测风塔*************************************************************/
 

File diff suppressed because it is too large
+ 767 - 486
web/monitor-web-sxjn/src/main/java/com/gyee/frame/service/websocket/GenreSetPushService.java


+ 89 - 30
web/monitor-web-sxjn/src/main/java/com/gyee/frame/service/websocket/WpInfoPushService.java

@@ -213,9 +213,9 @@ public class WpInfoPushService {
                 vo.setScadafdl(scadafdl);
                 //预测功率
                 double ycgl = StringUtils.round(jczblist.get(10).getPointValueInDouble(), 2);
-                jczbmap.put("ycgl", ycgl);
-                vo.setYcgl(ycgl);
 
+                vo.setYcgl(ycgl);
+                jczbmap.put("ycgl", ycgl);
             } else {
                 //实际功率
                 jczbmap.put("sjgl", 0.0);
@@ -274,16 +274,18 @@ public class WpInfoPushService {
 
                             //AGC出线有功
                             agccxyg = agccxyg+ StringUtils.round(subjczblist.get(0).getPointValueInDouble(), 2);
-                            jczbmap.put("agccxyg", agccxyg);
+                            jczbmap.put("agccxyg", MathUtil.twoBit(agccxyg));
                             //AGC有功设定
                             agcygsd = agcygsd+StringUtils.round(subjczblist.get(1).getPointValueInDouble(), 2);
-                            jczbmap.put("agcygsd", agcygsd);
+                            jczbmap.put("agcygsd", MathUtil.twoBit(agcygsd));
 
                         }
                     }
 
                 }
 
+
+
             }
 
             List<Windpowerstationpointnew> wpoints= windPowerstationTestingPoint2Service.getJsztList(id);
@@ -348,54 +350,99 @@ public class WpInfoPushService {
 /*****************************************************升压站指标******************************************************************/
 
 
-            if (ZtConfig.getMaps().containsKey(id + "_UAB")) {
-                List<String> ls = new ArrayList<>();
-
-                ls = ZtConfig.getMaps().get(id + "_UAB");
-                if (!ls.isEmpty()) {
-                    List<PointData> zblist = realApiUtil.getRealData(ls);
+            if (ZtConfig.getPointmap().containsKey(id + "_UAB") &&
+                ZtConfig.getRatemap().containsKey(id + "_UAB") &&
+                ZtConfig.getUnitmap().containsKey(id + "_UAB")) {
+                List<String> pointls = ZtConfig.getPointmap().get(id + "_UAB");
+                List<String> ratels = ZtConfig.getRatemap().get(id + "_UAB");
+                List<String> unitls = ZtConfig.getUnitmap().get(id + "_UAB");
+                if (!pointls.isEmpty() && pointls.size()==ratels.size() && pointls.size()==unitls.size()) {
+                    List<PointData> zblist = realApiUtil.getRealData(pointls);
                     double temp = 0.0;
                     if (!zblist.isEmpty()) {
 
                         for (int i = 0; i < zblist.size(); i++)
+                        {
                             temp = temp + zblist.get(i).getPointValueInDouble();
+                        }
+                        if(StringUtils.notEmp(ratels.get(0)))
+                        {
+                            double rate=Double.valueOf(ratels.get(0));
+                            temp=temp*rate;
+                        }
+
 
                     }
+
+                    if(StringUtils.notEmp(unitls.get(0)))
+                    {
+                        jczbmap.put("uabunit", unitls.get(0));
+                    }
                     jczbmap.put("uab", MathUtil.twoBit(temp));
                 }
             }
 
 
-            if (ZtConfig.getMaps().containsKey(id + "_IA")) {
-                List<String> ls = new ArrayList<>();
-
-                ls = ZtConfig.getMaps().get(id + "_IA");
-                if (!ls.isEmpty()) {
-                    List<PointData> zblist = realApiUtil.getRealData(ls);
+            if (ZtConfig.getPointmap().containsKey(id + "_IA") &&
+                    ZtConfig.getRatemap().containsKey(id + "_IA") &&
+                    ZtConfig.getUnitmap().containsKey(id + "_IA")) {
+                List<String> pointls = ZtConfig.getPointmap().get(id + "_IA");
+                List<String> ratels = ZtConfig.getRatemap().get(id + "_IA");
+                List<String> unitls = ZtConfig.getUnitmap().get(id + "_IA");
+                if (!pointls.isEmpty() && pointls.size()==ratels.size() && pointls.size()==unitls.size()) {
+                    List<PointData> zblist = realApiUtil.getRealData(pointls);
                     double temp = 0.0;
                     if (!zblist.isEmpty()) {
 
                         for (int i = 0; i < zblist.size(); i++)
+                        {
                             temp = temp + zblist.get(i).getPointValueInDouble();
+                        }
+                        if(StringUtils.notEmp(ratels.get(0)))
+                        {
+                            double rate=Double.valueOf(ratels.get(0));
+                            temp=temp*rate;
+                        }
+
 
                     }
+
+                    if(StringUtils.notEmp(unitls.get(0)))
+                    {
+                        jczbmap.put("iaunit", unitls.get(0));
+                    }
                     jczbmap.put("ia", MathUtil.twoBit(temp));
                 }
             }
 
-            if (ZtConfig.getMaps().containsKey(id + "_DNLB")) {
-                List<String> ls = new ArrayList<>();
-
-                ls = ZtConfig.getMaps().get(id + "_DNLB");
-                if (!ls.isEmpty()) {
-                    List<PointData> zblist = realApiUtil.getRealData(ls);
+            if (ZtConfig.getPointmap().containsKey(id + "_DNLB") &&
+                    ZtConfig.getRatemap().containsKey(id + "_DNLB") &&
+                    ZtConfig.getUnitmap().containsKey(id + "_DNLB")) {
+                List<String> pointls = ZtConfig.getPointmap().get(id + "_DNLB");
+                List<String> ratels = ZtConfig.getRatemap().get(id + "_DNLB");
+                List<String> unitls = ZtConfig.getUnitmap().get(id + "_DNLB");
+                if (!pointls.isEmpty() && pointls.size()==ratels.size() && pointls.size()==unitls.size()) {
+                    List<PointData> zblist = realApiUtil.getRealData(pointls);
                     double temp = 0.0;
                     if (!zblist.isEmpty()) {
 
                         for (int i = 0; i < zblist.size(); i++)
+                        {
                             temp = temp + zblist.get(i).getPointValueInDouble();
+                        }
+                        if(StringUtils.notEmp(ratels.get(0)))
+                        {
+                            double rate=Double.valueOf(ratels.get(0));
+                            temp=temp*rate;
+                        }
+
 
                     }
+
+                    if(StringUtils.notEmp(unitls.get(0)))
+                    {
+                        jczbmap.put("dnlbunit", unitls.get(0));
+                    }
                     jczbmap.put("dnlb", MathUtil.twoBit(temp));
                 }
             }
@@ -407,15 +454,27 @@ public class WpInfoPushService {
             if (InitialRunner.wpmap.containsKey(id)) {
                 Windpowerstationpointnew point2 = windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.FCCFTFX30);
 
-                if (StringUtils.notEmp(point2.getCode())) {
-                    PointData value = realApiUtil.getRealData(point2);
-                    jczbmap.put("cftfx", MathUtil.twoBit(value.getPointValueInDouble()));
-                }
-                point2 = windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.FCCFTFS30);
 
-                if (StringUtils.notEmp(point2.getCode())) {
-                    PointData value = realApiUtil.getRealData(point2);
-                    jczbmap.put("cftfs", MathUtil.twoBit(value.getPointValueInDouble()));
+                if(id.endsWith("_FDC"))
+                {
+                    if (StringUtils.notEmp(point2.getCode())) {
+                        PointData value = realApiUtil.getRealData(point2);
+                        jczbmap.put("cftfx", MathUtil.twoBit(value.getPointValueInDouble()));
+                    }
+                    point2 = windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.FCCFTFS30);
+
+                    if (StringUtils.notEmp(point2.getCode())) {
+                        PointData value = realApiUtil.getRealData(point2);
+                        jczbmap.put("cftfs", MathUtil.twoBit(value.getPointValueInDouble()));
+                    }
+                }else
+                {
+                    point2 = windPowerstationTestingPoint2Service.getWindPowerStationTestingPoint2(id, Constant.TPOINT_GF_SSFZD);
+
+                    if (StringUtils.notEmp(point2.getCode())) {
+                        PointData value = realApiUtil.getRealData(point2);
+                        jczbmap.put("rzqd", MathUtil.twoBit(value.getPointValueInDouble()));
+                    }
                 }
 
                 //map.put(wp.getId() + "cftmap", cftmap);

+ 99 - 0
web/monitor-web-sxjn/src/main/java/com/gyee/frame/shiro/config/MShiroFilterFactoryBean.java

@@ -0,0 +1,99 @@
+package com.gyee.frame.shiro.config;
+
+import org.apache.shiro.spring.web.ShiroFilterFactoryBean;
+import org.apache.shiro.web.filter.mgt.FilterChainManager;
+import org.apache.shiro.web.filter.mgt.FilterChainResolver;
+import org.apache.shiro.web.filter.mgt.PathMatchingFilterChainResolver;
+import org.apache.shiro.web.mgt.WebSecurityManager;
+import org.apache.shiro.web.servlet.AbstractShiroFilter;
+import org.springframework.beans.factory.BeanInitializationException;
+
+import javax.servlet.FilterChain;
+import javax.servlet.ServletException;
+import javax.servlet.ServletRequest;
+import javax.servlet.ServletResponse;
+import javax.servlet.http.HttpServletRequest;
+import java.io.IOException;
+import java.util.HashSet;
+import java.util.Set;
+
+/**
+ * 自定义shiro过滤规则
+ * @author Administrator
+ *
+ */
+public class MShiroFilterFactoryBean extends ShiroFilterFactoryBean {
+	// 对ShiroFilter来说,需要直接忽略的请求
+    private Set<String> ignoreExt;
+
+    public MShiroFilterFactoryBean() {
+        super();
+        ignoreExt = new HashSet<>();
+        ignoreExt.add(".jsp");
+//        ignoreExt.add(".png");
+//        ignoreExt.add(".gif");
+//        ignoreExt.add(".bmp");
+//        ignoreExt.add(".js");
+//        ignoreExt.add(".css");
+    }
+
+    @Override
+    protected AbstractShiroFilter createInstance() throws Exception {
+
+        org.apache.shiro.mgt.SecurityManager securityManager = getSecurityManager();
+        if (securityManager == null) {
+            String msg = "SecurityManager property must be set.";
+            throw new BeanInitializationException(msg);
+        }
+
+        if (!(securityManager instanceof WebSecurityManager)) {
+            String msg = "The security manager does not implement the WebSecurityManager interface.";
+            throw new BeanInitializationException(msg);
+        }
+
+        FilterChainManager manager = createFilterChainManager();
+
+        PathMatchingFilterChainResolver chainResolver = new PathMatchingFilterChainResolver();
+        chainResolver.setFilterChainManager(manager);
+
+        return new MSpringShiroFilter((WebSecurityManager) securityManager, chainResolver);
+    }
+
+    private final class MSpringShiroFilter extends AbstractShiroFilter {
+
+        protected MSpringShiroFilter(WebSecurityManager webSecurityManager, FilterChainResolver resolver) {
+            super();
+            if (webSecurityManager == null) {
+                throw new IllegalArgumentException("WebSecurityManager property cannot be null.");
+            }
+            setSecurityManager(webSecurityManager);
+            if (resolver != null) {
+                setFilterChainResolver(resolver);
+            }
+        }
+
+        @Override
+        protected void doFilterInternal(ServletRequest servletRequest, ServletResponse servletResponse,
+                                        FilterChain chain) throws ServletException, IOException {
+            HttpServletRequest request = (HttpServletRequest)servletRequest;
+            String str = request.getRequestURI().toLowerCase();
+            // 因为ShiroFilter 拦截所有请求(在上面我们配置了urlPattern 为 * ,当然你也可以在那里精确的添加要处理的路径,这样就不需要这个类了),而在每次请求里面都做了session的读取和更新访问时间等操作,这样在集群部署session共享的情况下,数量级的加大了处理量负载。
+            // 所以我们这里将一些能忽略的请求忽略掉。
+            // 当然如果你的集群系统使用了动静分离处理,静态资料的请求不会到Filter这个层面,便可以忽略。
+            boolean flag = true;
+            int idx = 0;
+            if(( idx = str.indexOf(".")) > 0 ){
+                str = str.substring(idx);
+                if(!ignoreExt.contains(str.toLowerCase()))
+                    //如果包含jsp则改为false
+                    flag = false;
+           }
+            if(flag){
+                super.doFilterInternal(servletRequest, servletResponse, chain);
+            }else{
+                chain.doFilter(servletRequest, servletResponse);
+            }
+        }
+
+    }
+}

+ 71 - 24
web/monitor-web-sxjn/src/main/java/com/gyee/frame/shiro/config/ShiroConfig.java

@@ -1,6 +1,7 @@
 package com.gyee.frame.shiro.config;
 
 import at.pollux.thymeleaf.shiro.dialect.ShiroDialect;
+import com.gyee.frame.common.cache.RedisSessionDao;
 import com.gyee.frame.shiro.service.MyShiroRealm;
 import org.apache.shiro.authc.credential.HashedCredentialsMatcher;
 import org.apache.shiro.cache.CacheManager;
@@ -8,6 +9,7 @@ import org.apache.shiro.cache.MemoryConstrainedCacheManager;
 import org.apache.shiro.mgt.RememberMeManager;
 import org.apache.shiro.realm.AuthorizingRealm;
 import org.apache.shiro.realm.Realm;
+import org.apache.shiro.spring.LifecycleBeanPostProcessor;
 import org.apache.shiro.spring.security.interceptor.AuthorizationAttributeSourceAdvisor;
 import org.apache.shiro.spring.web.ShiroFilterFactoryBean;
 import org.apache.shiro.web.mgt.CookieRememberMeManager;
@@ -56,23 +58,43 @@ public class ShiroConfig {
 		shiroFilterFactoryBean.setSecurityManager(securityManager);
 		return shiroFilterFactoryBean;
 	}
-	
-	/**
-	 * web应用管理配置
-	 * @param shiroRealm
-	 * @param cacheManager
-	 * @param manager
-	 * @return
-	 */
-	@Bean
-	public DefaultWebSecurityManager securityManager(Realm shiroRealm,CacheManager cacheManager,RememberMeManager manager) {
-		DefaultWebSecurityManager securityManager = new DefaultWebSecurityManager();
-		securityManager.setCacheManager(cacheManager);
-		securityManager.setRememberMeManager(manager);//记住Cookie
-		securityManager.setRealm(shiroRealm);
-		securityManager.setSessionManager(sessionManager());
-		return securityManager;
-	}
+
+    @Bean
+    public static LifecycleBeanPostProcessor lifecycleBeanPostProcessor() {
+        return new LifecycleBeanPostProcessor();
+    }
+    /**
+     * web应用管理配置
+     * @param shiroRealm
+
+     * @param manager
+     * @return
+     */
+    @Bean
+    public DefaultWebSecurityManager securityManager(Realm shiroRealm,  RememberMeManager manager) {
+        DefaultWebSecurityManager securityManager = new DefaultWebSecurityManager();
+
+        securityManager.setRememberMeManager(manager);//记住Cookie
+        securityManager.setRealm(shiroRealm);
+        securityManager.setSessionManager(sessionManager());
+        return securityManager;
+    }
+//	/**
+//	 * web应用管理配置
+//	 * @param shiroRealm
+//	 * @param cacheManager
+//	 * @param manager
+//	 * @return
+//	 */
+//	@Bean
+//	public DefaultWebSecurityManager securityManager(Realm shiroRealm,CacheManager cacheManager,RememberMeManager manager) {
+//		DefaultWebSecurityManager securityManager = new DefaultWebSecurityManager();
+//		securityManager.setCacheManager(cacheManager);
+//		securityManager.setRememberMeManager(manager);//记住Cookie
+//		securityManager.setRealm(shiroRealm);
+//		securityManager.setSessionManager(sessionManager());
+//		return securityManager;
+//	}
 	/**
 	 * session过期控制
 	 * @return
@@ -88,18 +110,43 @@ public class ShiroConfig {
 //		return defaultWebSessionManager;
 //	}
 
+    @Bean
+    public RedisSessionDao getRedisSessionDao(){
+        return new RedisSessionDao();
+    }
 
-	@Bean
-	public DefaultWebSessionManager sessionManager() {
-		DefaultWebSessionManager defaultWebSessionManager = new DefaultWebSessionManager();
-		Cookie cookie = defaultWebSessionManager.getSessionIdCookie();
+    @Bean(name="sessionManager")
+    public DefaultWebSessionManager sessionManager() {
+        DefaultWebSessionManager sessionManager = new DefaultWebSessionManager();
+        //sessionManager.setCacheManager(cacheManager());
+        sessionManager.setGlobalSessionTimeout(43200000); //12小时
+        sessionManager.setDeleteInvalidSessions(true);
+        //关键在这里
+        sessionManager.setSessionDAO(getRedisSessionDao());
+        sessionManager.setSessionValidationSchedulerEnabled(true);
+        sessionManager.setDeleteInvalidSessions(true);
+        Cookie cookie = sessionManager.getSessionIdCookie();
 		cookie.setSecure(false);
 		cookie.setName("MySessionId");
 		// 设置session过期时间3600s
 		Long timeout=60L*1000*60;//毫秒级别
-		defaultWebSessionManager.setGlobalSessionTimeout(timeout);
-		return defaultWebSessionManager;
-	}
+        sessionManager.setGlobalSessionTimeout(timeout);
+        return sessionManager;
+    }
+
+//	@Bean
+//	public DefaultWebSessionManager sessionManager() {
+//		DefaultWebSessionManager defaultWebSessionManager = new DefaultWebSessionManager();
+//		Cookie cookie = defaultWebSessionManager.getSessionIdCookie();
+//		cookie.setSecure(false);
+//		cookie.setName("MySessionId");
+//		// 设置session过期时间3600s
+//		Long timeout=60L*1000*60;//毫秒级别
+//		defaultWebSessionManager.setGlobalSessionTimeout(timeout);
+//		return defaultWebSessionManager;
+//	}
+
+
 	/**
 	 * 加密算法
 	 * @return

+ 65 - 16
web/monitor-web-sxjn/src/main/resources/application-jn.yml

@@ -57,16 +57,16 @@ server :
 #dev环境  mysql7.0
 spring :
   application:
-    name: monitor-hb-provider
-    cloud:
-      nacos:
-        discovery:
-          server-addr: 10.81.3.155:8848
-          #指定yaml格式的配置
-          file-extension: yaml
-          cluster-name: master
-        username: nacos
-        password: nacos
+#    name: monitor-hb-provider
+#    cloud:
+#      nacos:
+#        discovery:
+#          server-addr: 10.81.3.155:8848
+#          #指定yaml格式的配置
+#          file-extension: yaml
+#          cluster-name: master
+#        username: nacos
+#        password: nacos
     #引入其他配置文件,例如ftpHX 未配置文件application-ftpHX.yml
     #include: ftpHX,ftpCloud
   servlet:
@@ -78,16 +78,32 @@ spring :
       #shiro 报错修改的地方
     max-connections: 200000
     max-http-post-size: 9000000
+    #引入其他配置文件,例如ftpHX 未配置文件application-ftpHX.yml
+    #include: ftpHX,ftpCloud
   #热部署模块
   devtools:
     restart:
       #热部署开关
       enabled: true
       #指定热部署的目录
-      additional-paths: src/main/java
+      additional-paths: src/main
       #指定目录不更新
       exclude: test/**
-
+  mvc:   #静态文件
+    static-path-pattern : /static/**
+    async.request-timeout : 20000 #接口访问超时设置20秒
+  #模板引擎
+  thymeleaf:
+    model: HTML5
+    prefix: classpath:/templates/
+    suffix: .html
+    #指定编码
+    encoding: utf-8
+    #禁用缓存 默认false
+    cache: false
+  jackson:
+    time-zone: GMT+8
+    date-format: yyyy-MM-dd HH:mm:ss
   redis:
     database: 0
     host: 10.81.3.155
@@ -161,15 +177,48 @@ spring :
 
 #状态监视测点配置
 ztconfig:
-  maps:
+  pointmap:
     GJY_FDC_UAB:
       - FD-GJY1-Yuandong.140603F3111MDX01VL004DB0121VL01RAW00
     GJY_FDC_IA:
       - FD-GJY1-Yuandong.140603F0811BBT01PA009DB0111PA01RAW00
     GJY_FDC_DNLB:
-      - FD-GJY1-Yuandong.140603F5311MDK02PW005DB0121PW01SUM00
-      - FD-GJY1-Yuandong.140603F5311MDK02PW005DB0121PW01SUM00
-
+      - FD-GJY1-YuanDong.140603F0111MAT01PW009DB0125PW01RAW00
+      - FD-GJY1-YuanDong.140603F0311COW01PW053DB0125PW01RAW00
+    SY_GDC_UAB:
+      - GF-SY-Yuandong.140621G0111MAC01VL011DB0111VL01RAW01
+    SY_GDC_IA:
+      - GF-SY-Yuandong.140621G0111MAC01CR005DB0111CR01RAW01
+    SY_GDC_DNLB:
+      - GF-SY-Yuandong.140621G0111DCP01PW006DB0121PW01CNT01
+  ratemap:
+    GJY_FDC_UAB:
+      - 0.01
+    GJY_FDC_IA:
+      - 0.01
+    GJY_FDC_DNLB:
+      - 1
+      - 1
+    SY_GDC_UAB:
+      - 0.01
+    SY_GDC_IA:
+      - 0.01
+    SY_GDC_DNLB:
+      - 1
+  unitmap:
+    GJY_FDC_UAB:
+      - KV
+    GJY_FDC_IA:
+      - A
+    GJY_FDC_DNLB:
+      - A
+      - A
+    SY_GDC_UAB:
+      - KV
+    SY_GDC_IA:
+      - A
+    SY_GDC_DNLB:
+      - A
 #mysql 8.0
 
 #spring:

+ 1 - 1
web/monitor-web-sxjn/src/main/resources/application.yml

@@ -17,7 +17,7 @@ asyncThreadPool:
   # 线程名字前缀
   threadNamePrefix: thread-pool-task-executor-
 pagehelper:
-  helperDialect: oracle
+  helperDialect: postgresql
   reasonable: true
   supportMethodsArguments: true
   params: count=countSql

+ 1 - 1
web/monitor-web-sxjn/src/main/resources/mybatis-generator.xml

@@ -125,7 +125,7 @@
 <!--        <table tableName='StopAnalysismainVo' domainObjectName='StopAnalysismainVo'/>-->
 
 
-        <table tableName='Windsubandwindturbiinereal' domainObjectName='Windsubandwindturbiinereal'/>
+        <table tableName='t_sys_user' domainObjectName='TsysUser'/>
 
 
     </context>

+ 236 - 0
web/monitor-web-sxjn/src/main/resources/mybatis/auto/SysInterUrlMapper.xml

@@ -0,0 +1,236 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.gyee.frame.mapper.auto.SysInterUrlMapper">
+  <resultMap id="BaseResultMap" type="com.gyee.frame.model.auto.SysInterUrl">
+    <result column="id" jdbcType="VARCHAR" property="id" />
+    <result column="inter_name" jdbcType="VARCHAR" property="interName" />
+    <result column="url" jdbcType="VARCHAR" property="url" />
+    <result column="type" jdbcType="INTEGER" property="type" />
+  </resultMap>
+  <sql id="Example_Where_Clause">
+    <where>
+      <foreach collection="oredCriteria" item="criteria" separator="or">
+        <if test="criteria.valid">
+          <trim prefix="(" prefixOverrides="and" suffix=")">
+            <foreach collection="criteria.criteria" item="criterion">
+              <choose>
+                <when test="criterion.noValue">
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue">
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue">
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue">
+                  and ${criterion.condition}
+                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Update_By_Example_Where_Clause">
+    <where>
+      <foreach collection="example.oredCriteria" item="criteria" separator="or">
+        <if test="criteria.valid">
+          <trim prefix="(" prefixOverrides="and" suffix=")">
+            <foreach collection="criteria.criteria" item="criterion">
+              <choose>
+                <when test="criterion.noValue">
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue">
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue">
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue">
+                  and ${criterion.condition}
+                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+<sql id="Base_Column_List">
+	  	  	      	id,
+       	  	      	inter_name,
+       	  	      	url,
+       	  	    	  	type
+       	</sql>
+  <select id="selectByExample" parameterType="com.gyee.frame.model.auto.SysInterUrlExample" resultMap="BaseResultMap">
+    select
+    <if test="distinct">
+      distinct
+    </if>
+    <include refid="Base_Column_List" />
+    from t_sys_inter_url
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+    <if test="orderByClause != null">
+      order by ${orderByClause}
+    </if>
+  </select>
+  <select id="selectByPrimaryKey" parameterType="java.lang.String" resultMap="BaseResultMap">
+    select 
+    <include refid="Base_Column_List" />
+    from t_sys_inter_url
+    where id = #{id,jdbcType=VARCHAR}
+  </select>
+
+  <delete id="deleteByPrimaryKey" parameterType="java.lang.String">
+    delete from t_sys_inter_url
+    where id = #{id,jdbcType=VARCHAR}
+  </delete>
+  <delete id="deleteByExample" parameterType="com.gyee.frame.model.auto.SysInterUrlExample">
+    delete from t_sys_inter_url
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+  </delete>
+  
+  <insert id="insert" parameterType="com.gyee.frame.model.auto.SysInterUrl">
+    insert into t_sys_inter_url (
+      	  	       id,
+       	  	       inter_name,
+       	  	       url,
+       	  	    	  type
+       	    )
+    values (
+	  	  	      	#{id,jdbcType=VARCHAR},
+       	  	      	#{interName,jdbcType=VARCHAR},
+       	  	      	#{url,jdbcType=VARCHAR},
+       	  	    	  #{type,jdbcType=INTEGER}
+       	    )
+  </insert>
+  
+  <insert id="insertSelective" parameterType="com.gyee.frame.model.auto.SysInterUrl">
+    insert into t_sys_inter_url
+    <trim prefix="(" suffix=")" suffixOverrides=",">
+          
+      <if test="id != null">
+        id,
+      </if>
+      
+         
+      <if test="interName != null">
+        inter_name,
+      </if>
+      
+         
+      <if test="url != null">
+        url,
+      </if>
+      
+         
+      <if test="type != null">
+        type,
+      </if>
+      
+         </trim>
+    <trim prefix="values (" suffix=")" suffixOverrides=",">
+          <if test="id != null">
+        #{id,jdbcType=VARCHAR},
+      </if>
+          <if test="interName != null">
+        #{interName,jdbcType=VARCHAR},
+      </if>
+          <if test="url != null">
+        #{url,jdbcType=VARCHAR},
+      </if>
+          <if test="type != null">
+        #{type,jdbcType=INTEGER},
+      </if>
+        </trim>
+  </insert>
+  
+  <select id="countByExample" parameterType="com.gyee.frame.model.auto.SysInterUrlExample" resultType="java.lang.Long">
+    select count(*) from t_sys_inter_url
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+  </select>
+  
+  <update id="updateByExampleSelective" parameterType="map">
+    update t_sys_inter_url
+    <set>
+          <if test="record.id != null">
+        id = #{record.id,jdbcType=VARCHAR},
+      </if>
+          <if test="record.interName != null">
+        inter_name = #{record.interName,jdbcType=VARCHAR},
+      </if>
+          <if test="record.url != null">
+        url = #{record.url,jdbcType=VARCHAR},
+      </if>
+          <if test="record.type != null">
+        type = #{record.type,jdbcType=INTEGER},
+      </if>
+         
+    </set>
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  
+  
+  <update id="updateByExample" parameterType="map">
+    update t_sys_inter_url
+    set
+            	     	 id = #{record.id,jdbcType=VARCHAR},
+    	         	     	 inter_name = #{record.interName,jdbcType=VARCHAR},
+    	         	     	 url = #{record.url,jdbcType=VARCHAR},
+    	         	     	 type = #{record.type,jdbcType=INTEGER}
+    	         <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  
+  
+      <update id="updateByPrimaryKeySelective" parameterType="com.gyee.frame.model.auto.SysInterUrl">
+    update t_sys_inter_url
+    <set>
+                          <if test="interName != null">
+        inter_name = #{interName,jdbcType=VARCHAR},
+      </if>
+                      <if test="url != null">
+        url = #{url,jdbcType=VARCHAR},
+      </if>
+                      <if test="type != null">
+        type = #{type,jdbcType=INTEGER},
+      </if>
+              </set>
+    where 
+            id = #{id,jdbcType=VARCHAR}
+                                  
+  </update>
+
+      	      	   	      	   	      	   	      	
+
+  <update id="updateByPrimaryKey" parameterType="com.gyee.frame.model.auto.SysInterUrl">
+    update t_sys_inter_url
+    set 
+             	        	    	 			inter_name = #{interName,jdbcType=VARCHAR},
+		     	        	    	 			url = #{url,jdbcType=VARCHAR},
+		     	        	    	 			type = #{type,jdbcType=INTEGER}
+		     	        where 
+            id = #{id,jdbcType=VARCHAR}
+                                    
+  </update>
+  
+                        
+</mapper>

+ 318 - 0
web/monitor-web-sxjn/src/main/resources/mybatis/auto/SysWindpowerstationMapper.xml

@@ -0,0 +1,318 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.gyee.frame.mapper.auto.SysWindpowerstationMapper">
+  <resultMap id="BaseResultMap" type="com.gyee.frame.model.auto.SysWindpowerstation">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+    -->
+    <id column="id" jdbcType="VARCHAR" property="id" />
+    <result column="name" jdbcType="VARCHAR" property="name" />
+    <result column="company_id" jdbcType="VARCHAR" property="companyId" />
+    <result column="status" jdbcType="NUMERIC" property="status" />
+    <result column="order_num" jdbcType="NUMERIC" property="orderNum" />
+    <result column="company_name" jdbcType="VARCHAR" property="companyName" />
+    <result column="code" jdbcType="VARCHAR" property="code" />
+    <result column="parent_id" jdbcType="VARCHAR" property="parentId" />
+  </resultMap>
+  <sql id="Example_Where_Clause">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+    -->
+    <where>
+      <foreach collection="oredCriteria" item="criteria" separator="or">
+        <if test="criteria.valid">
+          <trim prefix="(" prefixOverrides="and" suffix=")">
+            <foreach collection="criteria.criteria" item="criterion">
+              <choose>
+                <when test="criterion.noValue">
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue">
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue">
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue">
+                  and ${criterion.condition}
+                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Update_By_Example_Where_Clause">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+    -->
+    <where>
+      <foreach collection="example.oredCriteria" item="criteria" separator="or">
+        <if test="criteria.valid">
+          <trim prefix="(" prefixOverrides="and" suffix=")">
+            <foreach collection="criteria.criteria" item="criterion">
+              <choose>
+                <when test="criterion.noValue">
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue">
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue">
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue">
+                  and ${criterion.condition}
+                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Base_Column_List">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+    -->
+    id, name, company_id, status, order_num, company_name, code, parent_id
+  </sql>
+  <select id="selectByExample" parameterType="com.gyee.frame.model.auto.SysWindpowerstationExample" resultMap="BaseResultMap">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+    -->
+    select
+    <if test="distinct">
+      distinct
+    </if>
+    <include refid="Base_Column_List" />
+    from t_sys_windpowerstation
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+    <if test="orderByClause != null">
+      order by ${orderByClause}
+    </if>
+  </select>
+  <select id="selectByPrimaryKey" parameterType="java.lang.String" resultMap="BaseResultMap">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+    -->
+    select 
+    <include refid="Base_Column_List" />
+    from t_sys_windpowerstation
+    where id = #{id,jdbcType=VARCHAR}
+  </select>
+  <delete id="deleteByPrimaryKey" parameterType="java.lang.String">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+    -->
+    delete from t_sys_windpowerstation
+    where id = #{id,jdbcType=VARCHAR}
+  </delete>
+  <delete id="deleteByExample" parameterType="com.gyee.frame.model.auto.SysWindpowerstationExample">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+    -->
+    delete from t_sys_windpowerstation
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+  </delete>
+  <insert id="insert" parameterType="com.gyee.frame.model.auto.SysWindpowerstation">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+    -->
+    insert into t_sys_windpowerstation (id, name, company_id, 
+      status, order_num, company_name, 
+      code, parent_id)
+    values (#{id,jdbcType=VARCHAR}, #{name,jdbcType=VARCHAR}, #{companyId,jdbcType=VARCHAR}, 
+      #{status,jdbcType=NUMERIC}, #{orderNum,jdbcType=NUMERIC}, #{companyName,jdbcType=VARCHAR}, 
+      #{code,jdbcType=VARCHAR}, #{parentId,jdbcType=VARCHAR})
+  </insert>
+  <insert id="insertSelective" parameterType="com.gyee.frame.model.auto.SysWindpowerstation">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+    -->
+    insert into t_sys_windpowerstation
+    <trim prefix="(" suffix=")" suffixOverrides=",">
+      <if test="id != null">
+        id,
+      </if>
+      <if test="name != null">
+        name,
+      </if>
+      <if test="companyId != null">
+        company_id,
+      </if>
+      <if test="status != null">
+        status,
+      </if>
+      <if test="orderNum != null">
+        order_num,
+      </if>
+      <if test="companyName != null">
+        company_name,
+      </if>
+      <if test="code != null">
+        code,
+      </if>
+      <if test="parentId != null">
+        parent_id,
+      </if>
+    </trim>
+    <trim prefix="values (" suffix=")" suffixOverrides=",">
+      <if test="id != null">
+        #{id,jdbcType=VARCHAR},
+      </if>
+      <if test="name != null">
+        #{name,jdbcType=VARCHAR},
+      </if>
+      <if test="companyId != null">
+        #{companyId,jdbcType=VARCHAR},
+      </if>
+      <if test="status != null">
+        #{status,jdbcType=NUMERIC},
+      </if>
+      <if test="orderNum != null">
+        #{orderNum,jdbcType=NUMERIC},
+      </if>
+      <if test="companyName != null">
+        #{companyName,jdbcType=VARCHAR},
+      </if>
+      <if test="code != null">
+        #{code,jdbcType=VARCHAR},
+      </if>
+      <if test="parentId != null">
+        #{parentId,jdbcType=VARCHAR},
+      </if>
+    </trim>
+  </insert>
+  <select id="countByExample" parameterType="com.gyee.frame.model.auto.SysWindpowerstationExample" resultType="java.lang.Long">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+    -->
+    select count(*) from t_sys_windpowerstation
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+  </select>
+  <update id="updateByExampleSelective" parameterType="map">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+    -->
+    update t_sys_windpowerstation
+    <set>
+      <if test="record.id != null">
+        id = #{record.id,jdbcType=VARCHAR},
+      </if>
+      <if test="record.name != null">
+        name = #{record.name,jdbcType=VARCHAR},
+      </if>
+      <if test="record.companyId != null">
+        company_id = #{record.companyId,jdbcType=VARCHAR},
+      </if>
+      <if test="record.status != null">
+        status = #{record.status,jdbcType=NUMERIC},
+      </if>
+      <if test="record.orderNum != null">
+        order_num = #{record.orderNum,jdbcType=NUMERIC},
+      </if>
+      <if test="record.companyName != null">
+        company_name = #{record.companyName,jdbcType=VARCHAR},
+      </if>
+      <if test="record.code != null">
+        code = #{record.code,jdbcType=VARCHAR},
+      </if>
+      <if test="record.parentId != null">
+        parent_id = #{record.parentId,jdbcType=VARCHAR},
+      </if>
+    </set>
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByExample" parameterType="map">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+    -->
+    update t_sys_windpowerstation
+    set id = #{record.id,jdbcType=VARCHAR},
+      name = #{record.name,jdbcType=VARCHAR},
+      company_id = #{record.companyId,jdbcType=VARCHAR},
+      status = #{record.status,jdbcType=NUMERIC},
+      order_num = #{record.orderNum,jdbcType=NUMERIC},
+      company_name = #{record.companyName,jdbcType=VARCHAR},
+      code = #{record.code,jdbcType=VARCHAR},
+      parent_id = #{record.parentId,jdbcType=VARCHAR}
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByPrimaryKeySelective" parameterType="com.gyee.frame.model.auto.SysWindpowerstation">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+    -->
+    update t_sys_windpowerstation
+    <set>
+      <if test="name != null">
+        name = #{name,jdbcType=VARCHAR},
+      </if>
+      <if test="companyId != null">
+        company_id = #{companyId,jdbcType=VARCHAR},
+      </if>
+      <if test="status != null">
+        status = #{status,jdbcType=NUMERIC},
+      </if>
+      <if test="orderNum != null">
+        order_num = #{orderNum,jdbcType=NUMERIC},
+      </if>
+      <if test="companyName != null">
+        company_name = #{companyName,jdbcType=VARCHAR},
+      </if>
+      <if test="code != null">
+        code = #{code,jdbcType=VARCHAR},
+      </if>
+      <if test="parentId != null">
+        parent_id = #{parentId,jdbcType=VARCHAR},
+      </if>
+    </set>
+    where id = #{id,jdbcType=VARCHAR}
+  </update>
+  <update id="updateByPrimaryKey" parameterType="com.gyee.frame.model.auto.SysWindpowerstation">
+    <!--
+      WARNING - @mbg.generated
+      This element is automatically generated by MyBatis Generator, do not modify.
+    -->
+    update t_sys_windpowerstation
+    set name = #{name,jdbcType=VARCHAR},
+      company_id = #{companyId,jdbcType=VARCHAR},
+      status = #{status,jdbcType=NUMERIC},
+      order_num = #{orderNum,jdbcType=NUMERIC},
+      company_name = #{companyName,jdbcType=VARCHAR},
+      code = #{code,jdbcType=VARCHAR},
+      parent_id = #{parentId,jdbcType=VARCHAR}
+    where id = #{id,jdbcType=VARCHAR}
+  </update>
+</mapper>

+ 2 - 2
web/monitor-web-sxjn/src/main/resources/mybatis/auto/TsysUserMapper.xml

@@ -88,7 +88,7 @@
     </where>
   </sql>
   <sql id="Base_Column_List" >
-    id, username, password, nickname, dep_id, pos_id
+    id, username, password, nickname, dep_id, pos_id,com_id
   </sql>
   <select id="selectByExample" resultMap="BaseResultMap" parameterType="com.gyee.frame.model.auto.TsysUserExample" >
     select
@@ -108,7 +108,7 @@
     select 
     <include refid="Base_Column_List" />
     ,(select dept_name from t_sys_department dep where dep.id=tsu.dep_id) as dep_name,
-      (select company_name from t_sys_company com where com.id=tsu.dep_id) as com_name,
+      (select company_name from t_sys_company com where com.id=tsu.com_id) as com_name,
 	(select post_name from t_sys_position pos where pos.id=tsu.pos_id) as pos_name
     from t_sys_user tsu
     where id = #{id,jdbcType=VARCHAR}

+ 1 - 1
web/monitor-web-sxjn/src/main/resources/mybatis/custom/TsysUserMapper.xml

@@ -30,7 +30,7 @@
 	<if test="_parameter != null and _parameter!=''" >
        where  username= #{_parameter}
     </if>
-	order by id+0 DESC
+	order by id DESC
   </select>
  
  

+ 1 - 1
web/monitor-web-sxjn/src/main/resources/mybatis/custom/TvueUserMapper.xml

@@ -30,7 +30,7 @@
 	<if test="_parameter != null and _parameter!=''" >
        where  username= #{_parameter}
     </if>
-	order by id+0 DESC
+	order by id DESC
   </select>
  
  

+ 2 - 2
web/monitor-web-sxjn/src/main/resources/static/admin/user/css/user-add.css

@@ -29,8 +29,8 @@ label.error {
     box-sizing: border-box;
     cursor: pointer;
     position: relative;
-    /* padding-left: 25px; */
-    padding-right: 15px;
+    padding-left: 25px;
+    padding-right: 25px;
     padding-top: 5px;
 }
 .sqcheckbox{

+ 3 - 1
web/monitor-web-sxjn/src/main/resources/templates/admin/sysCompany/add.html

@@ -30,7 +30,9 @@
 										<label class="col-sm-3 control-label ">父级:</label>
 										<div class="col-sm-8">
 											<input class="form-control" type="hidden" id="parentId" name="parentId"/>
-											<input class="form-control" readonly="true" type="text" id="pidName" onclick="selectMenuTree()" />
+                                            <input class="form-control" type="hidden" id="pidName" name="pidName"/>
+                                            <input class="form-control" type="hidden" id="parentIdcm" name="parentIdcm"/>
+											<input class="form-control" readonly="true" type="text" id="parentnamecm" onclick="selectMenuTree()" />
 										</div>
 									</div>
 									

+ 3 - 1
web/monitor-web-sxjn/src/main/resources/templates/admin/sysCompany/edit.html

@@ -33,7 +33,9 @@
 										<label class="col-sm-3 control-label ">父级:</label>
 										<div class="col-sm-8">
 											<input class="form-control" type="hidden" id="parentId" name="parentId" th:value="*{parentId}"/>
-											<input class="form-control" readonly="true" type="text" th:value="${perSysCompany.companyName}" id="pidName" onclick="selectMenuTree()" />
+                                            <input class="form-control" type="hidden" id="pidName" name="pidName" th:value="${perSysCompany.companyName}"/>
+                                            <input class="form-control" type="hidden" id="parentIdcm" name="parentIdcm" th:value="*{parentId}"/>
+											<input class="form-control" readonly="true" type="text" th:value="${perSysCompany.companyName}" id="parentnamecm" onclick="selectMenuTree()" />
 										</div>
 									</div>
 

+ 2 - 2
web/monitor-web-sxjn/src/main/resources/templates/admin/sysCompany/list.html

@@ -284,12 +284,12 @@ function batRemove(){
 
 function edit(id){
 	 var url = updateUrl.replace("{id}", id);
-     $.modal.open("修改权限", url);
+     $.modal.open("修改公司", url);
 }
 
 function remove(id){
 	
-	$.modal.confirm("确定删除该条权限信息吗?", function() {
+	$.modal.confirm("确定删除该条公司信息吗?", function() {
         var url = removeUrl.replace("{id}", id);
         var data = {
             "ids": id

+ 4 - 2
web/monitor-web-sxjn/src/main/resources/templates/admin/sysCompany/tree.html

@@ -130,8 +130,10 @@ function loadObj(data){
 	var treeName = data.text;
 	
 	if(treeId != "1") {
-		parent.$("#parentIdCom").val(treeId);
-		parent.$("#pidNameCom").val(treeName);
+		parent.$("#parentId").val(treeId);
+		parent.$("#pidName").val(treeName);
+        parent.$("#parentIdcm").val(treeId);
+        parent.$("#parentnamecm").val(treeName);
 		var index = parent.layer.getFrameIndex(window.name); // 获取窗口索引
 		parent.layer.close(index);
 	}

+ 288 - 0
web/monitor-web-sxjn/src/main/resources/templates/admin/sysCompany/tree2.html

@@ -0,0 +1,288 @@
+<!DOCTYPE html>
+<html xmlns:th="http://www.thymeleaf.org"
+      xmlns:sec="http://www.pollix.at/thymeleaf/shiro">
+<head th:replace="admin/common/html/tableHead :: tableHead(~{::title},~{::link},~{::style})">
+    <title th:text=${title}></title>
+    <!-- 这儿引用单独的css link -->
+    <!-- Ladda for Bootstrap 3按钮加载进度插件 -->
+    <link rel="stylesheet" th:href="@{/static/admin/assets/js/button/ladda/ladda.min.css}">
+    <!-- treeview -->
+    <link th:href="@{/static/admin/assets/js/bootstrap/bootstrap-treeview/css/bootstrap-treeview.css}" rel="stylesheet"/>
+
+    <style type="text/css">
+        .content-wrap {
+            padding: 0px;
+        }
+        body {
+            color: #9ea7b3;
+            font-family: "Open Sans", Arial, sans-serif!important;
+            font-size: 13px!important;
+            line-height: 20px;
+            overflow-x: hidden!important;
+            min-height: 100%;
+            z-index: -2;
+            margin: 0px !important;
+            background: url() no-repeat top center fixed;
+            -moz-background-size: cover;
+            -webkit-background-size: cover;
+            -o-background-size: cover;
+            background-size: cover;
+        }
+        label.error {
+            position: absolute;
+            right: 18px;
+            top: 5px;
+            color: #ef392b;
+            font-size: 12px;
+        }
+    </style>
+
+</head>
+<body>
+
+<div id="fcapp" class="content-wrap">
+    <div class="row">
+        <div class="col-sm-12">
+            <div class="nest" id="elementClose">
+                <div class="">
+                </div>
+                <div class="body-nest" id="element">
+                    <div class="panel-body">
+                        <form  class="form-horizontal m" id="form-add">
+                            <div class="form-group">
+                                <div class="col-sm-8">
+                                    <div id="tree"></div>
+                                </div>
+                            </div>
+                            <div class="form-group">
+                                <div class="form-control-static col-sm-offset-9">
+                                    <button type="button" class="btn btn-primary" onclick="$.modal.close()">提交</button>
+                                    <button onclick="$.modal.close()" class="btn btn-danger" type="button">关闭</button>
+                                </div>
+                            </div>
+                        </form>
+                    </div>
+                </div>
+            </div>
+        </div>
+    </div>
+</div>
+
+<!-- 通用js -->
+<div th:include="admin/common/html/js :: onload_js"></div>
+<!-- 弹窗 -->
+<script th:src="@{/static/admin/assets/js/layer/layer.js}" type="text/javascript"></script>
+<!-- 遮罩层 -->
+<script th:src="@{/static/admin/assets/js/blockUI/jquery.blockUI.js}" type="text/javascript"></script>
+<!--bootstarp threeView -->
+<script th:src="@{/static/admin/assets/js/bootstrap/bootstrap-treeview/js/bootstrap-treeview.js}" type="text/javascript"></script>
+<script th:src="@{/static/admin/assets/js/bootstrap/js/base_list.js}" type="text/javascript"></script>
+
+
+<script type="text/javascript">
+
+    //添加方法
+    function add() {
+        var dataFormJson=$("#form-add").serialize();
+        $.ajax({
+            cache : true,
+            type : "POST",
+            url : rootPath + "/SysCompanyController/add",
+            data :dataFormJson,
+            async : false,
+            error : function(request) {
+                $.modal.alertError("系统错误");
+            },
+            success : function(data) {
+                $.operate.saveSuccess(data);
+            }
+        });
+    }
+
+
+    /***权限配置***/
+
+    function getTree() {
+        var tree = [];
+        $.ajax({
+            url: rootPath + "/SysCompanyController/tree/0",
+            type:"post",
+            async : false,
+            cache : true,
+            error : function(request) {
+                $.modal.alertError("系统错误");
+            },
+            success : function(data) {
+                if(!$.common.isEmpty(data)&&data.code==200){
+                    tree.push(data.data);
+                }
+            }
+
+
+        })
+        return tree;
+    }
+
+
+    //赋值给父菜单
+    // function loadObj(data){
+    // 	var treeId = data.id;
+    // 	var treeName = data.text;
+    //
+    // 	if(treeId != "1") {
+    // 		parent.$("#parentId").val(treeId);
+    // 		parent.$("#pidName").val(treeName);
+    //         parent.$("#parentIdcm").val(treeId);
+    //         parent.$("#parentnamecm").val(treeName);
+    // 		var index = parent.layer.getFrameIndex(window.name); // 获取窗口索引
+    // 		parent.layer.close(index);
+    // 	}
+    // 	else {
+    // 		$.modal.alertError("主菜单不能选择");
+    // 	}
+    //
+    //
+    //
+    // }
+
+    var str1 =parent.$("#parentId").val();
+    var str2 =parent.$("#pidName").val();
+
+    $(function() {
+
+        $('#tree').treeview({
+            levels : 3,////设置初始化展开几级菜单 默认为2
+            showCheckbox : 1,//这里之所以写1,是因为我引得js源码里定义1为true  checkbox
+            multiSelect : 1,//这里之所以写1,是因为我引得js源码里定义1为true  多选
+            data : getTree(),
+            color : "#000000",//设置字体加载颜色
+            backColor : "#FFFFFF",//设置背景颜色
+            selectedColor : "#428bca",//设置选中的字体颜色
+            highlightSelected:true,     //是否选中高亮显示
+            onhoverColor: "#FF00FF",    //鼠标滑过的颜色
+            showBorder:true,//是否显示边框
+            onNodeChecked(event, node){
+
+                if(node.id != "1") {
+
+                    if (str1.length > 0) {
+
+                        str1 = str1 + node.id + ',';
+                        str2 = str2 + node.text + ',';
+
+                    } else {
+                        str1 = node.id + ',';
+                        str2 = node.text + ',';
+                    }
+                    parent.$("#parentId").val(str1);
+                    parent.$("#pidName").val(str2);
+
+                }else {
+                    $.modal.alertError("主菜单不能选择");
+                   }
+            },
+            onNodeUnchecked(event, node){
+
+                parent.$("#parentId").val(str1.replace(node.text + ",", ""));
+
+                parent.$("#pidName").val(str2.replace(node.text + ",", ""));
+            },
+
+            nodeSelected (event, node){
+
+
+            },
+            nodeChecked (event, node){//一个节点被checkedc
+            },
+            onNodeUnchecked : function(event, node) { //取消选中节点
+            }
+
+        });
+
+    })
+
+
+
+    var nodeCheckedSilent = false;
+    function nodeChecked (event, node){
+        if(nodeCheckedSilent){
+            return;
+        }
+        nodeCheckedSilent = true;
+        checkAllParent(node);
+        checkAllSon(node);
+        nodeCheckedSilent = false;
+
+
+    }
+
+    var nodeUncheckedSilent = false;
+    function nodeUnchecked  (event, node){
+        if(nodeUncheckedSilent)
+            return;
+        nodeUncheckedSilent = true;
+        uncheckAllParent(node);
+        uncheckAllSon(node);
+        parent.$("#parentId").val(str1.replace(node.text + ",", ""));
+
+        parent.$("#pidName").val(str2.replace(node.text + ",", ""));
+        nodeUncheckedSilent = false;
+    }
+
+    //选中全部父节点
+    function checkAllParent(node){
+        $('#searchTree').treeview('checkNode',node.nodeId,{silent:true});
+        var parentNode = $('#searchTree').treeview('getParent',node.nodeId);
+        if(!("nodeId" in parentNode)){
+            return;
+        }else{
+            checkAllParent(parentNode);
+        }
+    }
+    //取消全部父节点
+    function uncheckAllParent(node){
+        $('#searchTree').treeview('uncheckNode',node.nodeId,{silent:true});
+        var siblings = $('#searchTree').treeview('getSiblings', node.nodeId);
+        var parentNode = $('#searchTree').treeview('getParent',node.nodeId);
+        if(!("nodeId" in parentNode)) {
+            return;
+        }
+        var isAllUnchecked = true;  //是否全部没选中
+        for(var i in siblings){
+            if(siblings[i].state.checked){
+                isAllUnchecked=false;
+                break;
+            }
+        }
+        if(isAllUnchecked){
+            uncheckAllParent(parentNode);
+        }
+
+    }
+
+    //级联选中所有子节点
+    function checkAllSon(node){
+        $('#searchTree').treeview('checkNode',node.nodeId,{silent:true});
+        if(node.nodes!=null&&node.nodes.length>0){
+            for(var i in node.nodes){
+                checkAllSon(node.nodes[i]);
+            }
+        }
+    }
+    //级联取消所有子节点
+    function uncheckAllSon(node){
+        $('#searchTree').treeview('uncheckNode',node.nodeId,{silent:true});
+        if(node.nodes!=null&&node.nodes.length>0){
+            for(var i in node.nodes){
+                uncheckAllSon(node.nodes[i]);
+            }
+        }
+    }
+
+</script>
+
+
+</body>
+
+
+</html>

+ 5 - 2
web/monitor-web-sxjn/src/main/resources/templates/admin/sysDepartment/add.html

@@ -29,8 +29,11 @@
 									<div class="form-group">
 										<label class="col-sm-3 control-label ">父级:</label>
 										<div class="col-sm-8">
-											<input class="form-control" type="hidden" id="parentId" name="parentId"/>
-											<input class="form-control" readonly="true" type="text" id="pidName" onclick="selectMenuTree()" />
+
+                                            <input class="form-control" type="hidden" id="parentId" name="parentId"/>
+                                            <input class="form-control" type="hidden" id="pidName" name="parentId"/>
+                                            <input class="form-control" type="hidden" id="parentIddep" name="parentId"/>
+											<input class="form-control" readonly="true" type="text" id="parentnamedep" onclick="selectMenuTree()" />
 										</div>
 									</div>
 									

+ 3 - 1
web/monitor-web-sxjn/src/main/resources/templates/admin/sysDepartment/edit.html

@@ -33,7 +33,9 @@
 										<label class="col-sm-3 control-label ">父级:</label>
 										<div class="col-sm-8">
 											<input class="form-control" type="hidden" id="parentId" name="parentId" th:value="*{parentId}"/>
-											<input class="form-control" readonly="true" type="text" th:value="${perSysDepartment.deptName}" id="pidName" onclick="selectMenuTree()" />
+                                            <input class="form-control" type="hidden" id="pidName" name="pidName" th:value="${perSysDepartment.deptName}"/>
+                                            <input class="form-control" type="hidden" id="parentIddep" name="parentIddep" th:value="*{parentId}"/>
+											<input class="form-control" readonly="true" type="text" th:value="${perSysDepartment.deptName}" id="parentnamedep" onclick="selectMenuTree()" />
 										</div>
 									</div>
 

+ 5 - 2
web/monitor-web-sxjn/src/main/resources/templates/admin/sysDepartment/tree.html

@@ -130,8 +130,11 @@ function loadObj(data){
 	var treeName = data.text;
 	
 	if(treeId != "1") {
-		parent.$("#parentId").val(treeId);
-		parent.$("#pidName").val(treeName);
+
+        parent.$("#parentId").val(treeId);
+        parent.$("#pidName").val(treeName);
+        parent.$("#parentIddep").val(treeId);
+        parent.$("#parentnamedep").val(treeName);
 		var index = parent.layer.getFrameIndex(window.name); // 获取窗口索引
 		parent.layer.close(index);
 	}

+ 178 - 0
web/monitor-web-sxjn/src/main/resources/templates/admin/sysWindpowerstation/add.html

@@ -0,0 +1,178 @@
+<!DOCTYPE html>
+<html xmlns:th="http://www.thymeleaf.org"
+      xmlns:sec="http://www.pollix.at/thymeleaf/shiro">
+<head th:replace="admin/common/html/tableHead :: head(~{::title},~{::link},~{::style})">
+
+<title th:text=${title}></title>
+<!-- 这儿引用单独的css link -->
+<!-- Ladda for Bootstrap 3按钮加载进度插件 -->
+<link rel="stylesheet" th:href="@{/static/admin/assets/js/button/ladda/ladda.min.css}">
+<!-- bootstrap-table表单样式 -->
+<link th:href="@{/static/admin/assets/js/bootstrap/css/bootstrap-table/bootstrap-table.min.css}" rel="stylesheet"/>
+<!-- 用户界面自定义css -->
+<link th:href="@{/static/admin/user/css/user-add.css}" rel="stylesheet"/>
+<style type="text/css"></style>
+</head>
+
+<body>
+
+<div class="content-wrap">
+	<div class="row">
+		<div class="col-sm-12">
+			<div class="nest" id="elementClose">
+				<div class="">
+				</div>
+				<div class="body-nest" id="element">
+					<div class="panel-body">
+						<form  class="form-horizontal m" id="form-add">
+
+									<div class="form-group">
+										<label class="col-sm-3 control-label ">编号:</label>
+										<div class="col-sm-8">
+											<input class="form-control" type="text" id="code" name="code"/>
+										</div>
+									</div>
+
+
+									<div class="form-group">
+										<label class="col-sm-3 control-label ">名称:</label>
+										<div class="col-sm-8">
+											<input class="form-control" type="text" id="name" name="name"/>
+										</div>
+									</div>
+
+
+                                    <div class="form-group">
+                                        <label class="col-sm-3 control-label ">公司:</label>
+                                        <div class="col-sm-8">
+                                            <input class="form-control" type="hidden" id="parentId" name="companyId"/>
+                                            <input class="form-control" readonly="true" type="text" id="pidName" name="companyName" onclick="selectCompanyMenuTree()" />
+                                        </div>
+                                    </div>
+
+
+									<div class="form-group">
+										<label class="col-sm-3 control-label ">排序:</label>
+										<div class="col-sm-8">
+											<input class="form-control" type="text" id="orderNum" name="orderNum"/>
+										</div>
+									</div>
+
+
+                                    <div class="form-group">
+                                        <label class="col-sm-3 control-label ">状态:</label>
+                                        <div class="col-sm-8">
+                                            <select class="form-control"  id="status" name="status">
+                                                <option value="1">开启</option>
+                                                <option value="0">关闭</option>
+                                            </select>
+                                        </div>
+                                    </div>
+
+
+									<div class="form-group">
+										<div class="form-control-static col-sm-offset-9">
+											<button type="submit" class="btn btn-primary">提交</button>
+											<button onclick="$.modal.close()" class="btn btn-danger" type="button">关闭</button>
+										</div>
+									</div>
+						 </form>
+					</div>
+				</div>
+			</div>
+		</div>
+	</div>
+</div>
+
+<!-- 通用js -->
+<div th:include="admin/common/html/js :: onload_js">
+
+</div>
+<!-- bootstarp 表格 -->
+<script th:src="@{/static/admin/assets/js/bootstrap/js/bootstrap-table/bootstrap-table.min.js}" type="text/javascript"></script>
+<script th:src="@{/static/admin/assets/js/bootstrap/js/bootstrap-table/locale/bootstrap-table-zh-CN.min.js}" type="text/javascript"></script>
+<script th:src="@{/static/admin/assets/js/bootstrap/js/base_list.js}" type="text/javascript"></script>
+
+
+<!-- 弹窗 -->
+<script  th:src="@{/static/admin/assets/js/layer/layer.js}" type="text/javascript"></script>
+<!-- 遮罩层 -->
+<script  th:src="@{/static/admin/assets/js/blockUI/jquery.blockUI.js}" type="text/javascript"></script>
+<!-- jqueryForm序列化 -->
+<script  th:src="@{/static/js/jqueryFormSerializeJson.js}" type="text/javascript"></script>
+<script type="text/javascript">
+
+$(function(){
+	 $(".MyDate").datetimepicker({
+		 	format: "yyyy-mm-dd hh:00:00",
+	        startDate: new Date(),
+	        autoclose: true,
+	        todayBtn: true,
+	        language: 'zh-CN',
+	        initialDate:new Date(),
+	        minView: 1
+	    });
+
+})
+
+
+$("#form-add").validate({
+	rules:{
+		cityName:{
+			required:true,
+			minlength: 2,
+			maxlength: 20,
+			remote: {
+                url: rootPath + "/SysWindpowerstationController/checkNameUnique",
+                type: "post",
+                dataType: "json",
+                dataFilter: function(data, type) {
+                    if (data == "0")
+                    	return true;
+                    else
+                    	return false;
+                }
+            }
+		}
+	},
+	messages: {
+        "cityName": {
+            remote: "已经存在"
+        }
+    },
+	submitHandler:function(form){
+		add();
+	}
+});
+
+/**
+ * 用户添加方法
+ */
+function add() {
+	var dataFormJson=$("#form-add").serialize();
+	$.ajax({
+		cache : true,
+		type : "POST",
+		url : rootPath + "/SysWindpowerstationController/add",
+		data : dataFormJson,
+		async : false,
+		error : function(request) {
+			$.modal.alertError("系统错误");
+		},
+		success : function(data) {
+			$.operate.saveSuccess(data);
+		}
+	});
+}
+
+function selectCompanyMenuTree() {
+    var url =  rootPath+ "/SysCompanyController/tree";
+    $.modal.open("选择菜单", url, '380', '380');
+}
+</script>
+
+
+</body>
+
+
+</html>

+ 150 - 0
web/monitor-web-sxjn/src/main/resources/templates/admin/sysWindpowerstation/edit.html

@@ -0,0 +1,150 @@
+<!DOCTYPE html>
+<html xmlns:th="http://www.thymeleaf.org" 
+      xmlns:sec="http://www.pollix.at/thymeleaf/shiro">
+<head th:replace="admin/common/html/tableHead :: tableHead(~{::title},~{::link},~{::style})">
+
+<title th:text=${title}></title>
+<!-- 这儿引用单独的css link -->
+<!-- Ladda for Bootstrap 3按钮加载进度插件 -->
+<link rel="stylesheet" th:href="@{/static/admin/assets/js/button/ladda/ladda.min.css}">
+<!-- bootstrap-table表单样式 -->
+<link th:href="@{/static/admin/assets/js/bootstrap/css/bootstrap-table/bootstrap-table.min.css}" rel="stylesheet"/>
+
+<!-- 用户界面自定义css -->
+<link th:href="@{/static/admin/user/css/user-add.css}" rel="stylesheet"/>
+<style type="text/css"></style>
+
+</head>
+
+<body>
+      	   	      	      	      	      	      	      	      	      	      	      	      	      
+<div class="content-wrap">
+	<div class="row">
+		<div class="col-sm-12">
+			<div class="nest" id="elementClose">
+				<div class="">
+				</div>
+				<div class="body-nest" id="element">
+					<div class="panel-body">
+						<form  class="form-horizontal m" id="form-edit" th:object="${SysWindpowerstation}">
+							<input id="id" name="id" type="hidden" th:field="*{id}"/>
+						
+									<div class="form-group">
+										<label class="col-sm-3 control-label ">编号:</label>
+										<div class="col-sm-8">
+											<input class="form-control" type="text" id="code" name="code" th:value="*{code}"/>
+										</div>
+									</div>
+
+								
+									<div class="form-group">
+										<label class="col-sm-3 control-label ">名称:</label>
+										<div class="col-sm-8">
+											<input class="form-control" type="text" id="name" name="name" th:value="*{name}"/>
+										</div>
+									</div>
+
+
+                                    <div class="form-group">
+                                        <label class="col-sm-3 control-label ">公司:</label>
+                                        <div class="col-sm-8">
+                                            <input class="form-control" type="hidden" id="parentId" name="companyId" th:value="*{companyId}"/>
+                                            <input class="form-control" readonly="true" type="text" th:value="*{companyName}" name="companyName" id="pidName" onclick="selectCompanyMenuTree()" />
+                                        </div>
+                                    </div>
+
+
+									<div class="form-group">
+										<label class="col-sm-3 control-label ">排序:</label>
+										<div class="col-sm-8">
+											<input class="form-control" type="text" id="orderNum" name="orderNum" th:value="*{orderNum}"/>
+										</div>
+									</div>
+
+                                    <div class="form-group">
+                                        <label class="col-sm-3 control-label ">状态:</label>
+                                        <div class="col-sm-8">
+                                            <select class="form-control"  id="status" name="status" th:field="*{status}">
+                                                <option value="1">开启</option>
+                                                <option value="0">关闭</option>
+                                            </select>
+                                        </div>
+                                    </div>
+
+
+									<div class="form-group">
+										<div class="form-control-static col-sm-offset-9">
+											<button type="submit" class="btn btn-primary">提交</button>
+											<button onclick="$.modal.close()" class="btn btn-danger" type="button">关闭</button>
+										</div>
+									</div>
+						</form>
+					</div>
+				</div>
+			</div>
+		</div>
+	</div>
+</div>
+
+<!-- 通用js -->
+<div th:include="admin/common/html/js :: onload_js">
+
+</div>
+<!-- bootstarp 表格 -->
+<script th:src="@{/static/admin/assets/js/bootstrap/js/bootstrap-table/bootstrap-table.min.js}" type="text/javascript"></script>
+<script th:src="@{/static/admin/assets/js/bootstrap/js/bootstrap-table/locale/bootstrap-table-zh-CN.min.js}" type="text/javascript"></script>
+<script th:src="@{/static/admin/assets/js/bootstrap/js/base_list.js}" type="text/javascript"></script>
+
+
+<!-- 弹窗 -->
+<script th:src="@{/static/admin/assets/js/layer/layer.js}" type="text/javascript"></script>
+<!-- 遮罩层 -->
+<script th:src="@{/static/admin/assets/js/blockUI/jquery.blockUI.js}" type="text/javascript"></script>
+<script type="text/javascript">
+$(function(){
+	 $(".MyDate").datetimepicker({
+		 	format: "yyyy-mm-dd hh:00:00",
+	        startDate: new Date(),
+	        autoclose: true,
+	        todayBtn: true,
+	        language: 'zh-CN',
+	        initialDate:new Date(),
+	        minView: 1
+	    });
+
+})
+
+
+$("#form-edit").validate({
+	submitHandler : function(form) {
+		edit();
+	}
+});
+
+function edit() {
+	var dataFormJson = $("#form-edit").serialize();
+	$.ajax({
+		cache : true,
+		type : "POST",
+		url : rootPath + "/SysWindpowerstationController/edit",
+		data : dataFormJson,
+		async : false,
+		error : function(request) {
+			$.modal.alertError("系统错误");
+		},
+		success : function(data) {
+			$.operate.saveSuccess(data);
+		}
+	});
+}
+
+function selectCompanyMenuTree() {
+    var url =  rootPath+ "/SysCompanyController/tree";
+    $.modal.open("选择菜单", url, '380', '380');
+}
+</script>
+
+</body>
+
+
+</html>

+ 328 - 0
web/monitor-web-sxjn/src/main/resources/templates/admin/sysWindpowerstation/list.html

@@ -0,0 +1,328 @@
+<!DOCTYPE html>
+<html xmlns:th="http://www.thymeleaf.org"
+      xmlns:sec="http://www.pollix.at/thymeleaf/shiro">
+<head th:replace="admin/common/html/head :: Head_Premiss(~{::title},~{::link},~{::style})">
+
+    <title th:text=${title}></title>
+    <!-- 这儿引用单独的css link -->
+    <!-- Ladda for Bootstrap 3按钮加载进度插件 -->
+    <link rel="stylesheet" th:href="@{/static/admin/assets/js/button/ladda/ladda.min.css}">
+
+    <link rel="stylesheet" th:href="@{/static/js/bootstrap-treetable/bootstrap-treetable.min.css}">
+
+    <style type="text/css">
+        /**
+        *这里写单独的css样式
+        */
+
+    </style>
+
+</head>
+
+<body id="listbody">
+<!-- # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # 代码编写处 # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # -->
+
+<!-- 右边内容 -->
+<div class="wrap-fluid">
+    <div class="container-fluid paper-wrap bevel tlbr">
+        <!-- 内容 -->
+        <!--标题 通用-->
+        <div th:replace="admin/common/html/title :: title(${title},${parenttitle},${isMsg},${msgHTML})">
+        </div>
+        <!-- 结束标题 通用-->
+        <div class="content-wrap">
+            <!-- 结束内容 -->
+            <div class="row">
+                <div class="col-sm-12">
+                    <!-- 搜索条件 -->
+
+                    <div class="nest" id="inlineClose">
+                        <div class="title-alt">
+                            <h6>搜索条件</h6>
+                            <div class="titleClose">
+                                <a class="gone" href="#inlineClose">
+                                    <span class="entypo-cancel"></span>
+                                </a>
+                            </div>
+                            <div class="titleToggle">
+                                <a class="nav-toggle-alt" href="#search_div" >
+                                    <span class="entypo-down-open"></span>
+                                </a>
+                            </div>
+                        </div>
+
+                        <div class="body-nest" id="search_div" style="display: none">
+                            <div class="form_left">
+                                <form role="form" class="form-inline">
+                                    <div class="form-group">
+                                        <label for="exampleInputEmail2" class="sr-only">搜索名字</label>
+                                        <input type="text" name="searchText" placeholder="搜索名字"class="form-control">
+                                    </div>
+                                    <button onclick="$.table.search(this)" class="btn btn-success" type="button"><i class="fa fa-search"></i>&nbsp;搜索</button>
+                                </form>
+                            </div>
+                        </div>
+                    </div>
+                    <!-- END搜索条件 -->
+                    <!-- 空白页开始-->
+                    <div class="nest" id="Blank_PageClose">
+                        <div class="title-alt">
+                            <h6>表单</h6>
+                            <div class="titleClose">
+                                <a class="gone" href="#Blank_PageClose">
+                                    <span class="entypo-cancel"></span>
+                                </a>
+                            </div>
+                            <div class="titleToggle">
+                                <a class="nav-toggle-alt" href="#Blank_Page_Content">
+                                    <span class="entypo-up-open"></span>
+                                </a>
+                            </div>
+                        </div>
+
+                        <div class="body-nest" id="Blank_Page_Content">
+                            <!-- 工具条 -->
+                            <div class="btn-group hidden-xs" id="exampleTableEventsToolbar" role="group">
+                                <button onclick="add()" type="button" class="btn btn-primary">
+                                    <span class="entypo-plus-squared"></span>&nbsp;&nbsp;新增
+                                </button>
+                                <button onclick="batRemove()" type="button" class="btn btn-info">
+                                    <span class="entypo-trash"></span>&nbsp;&nbsp;删除
+                                </button>
+                                <button id="expandAllBtn"  type="button" class="btn btn-success">
+                                    <span class="entypo-shuffle"></span>&nbsp;&nbsp;展开/折叠
+                                </button>
+
+                            </div>
+                            <!-- 工具条 end-->
+                            <table id="demo" class="table-striped footable-res footable metro-blue" data-page-size="6">
+
+                            </table>
+                        </div>
+                    </div>
+                </div>
+                <!-- 空白页结束 -->
+            </div>
+            <!-- 结束内容 -->
+        </div>
+    </div>
+</div>
+<!-- 结束右边内容 -->
+<!-- # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # 代码编写处 END# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # -->
+
+
+
+
+
+
+
+<!-- 右侧隐藏滑块内容 -->
+<div th:include="admin/common/html/rightHide :: rightHide">
+
+</div>
+<!-- END 右侧隐藏滑块内容-->
+
+<!-- 通用js -->
+<div th:include="admin/common/html/js :: onload_js_Premiss">
+
+</div>
+<script th:src="@{/static/js/bootstrap-treetable/bootstrap-treetable.min.js}" type="text/javascript"></script>
+<script type="text/javascript">
+    var dataUrl=window.rootPath+"/SysWindpowerstationController/list2";
+    var removeUrl=window.rootPath+"/SysWindpowerstationController/remove";
+    var createUrl=window.rootPath+"/SysWindpowerstationController/add";
+    var updateUrl=window.rootPath+"/SysWindpowerstationController/edit/{id}";
+    var exportUrl=window.rootPath+"/SysWindpowerstationController/export";
+
+
+    var treeTable = $('#demo').bootstrapTreeTable({
+        toolbar: "#demo-toolbar",//顶部工具条
+        expandColumn : 3,// 在哪一列上面显示展开按钮
+        url: dataUrl,// 请求后台的URL(*)
+        type: 'post',
+        id : "id",
+        rootIdValue: '0',
+        parentId: 'parentId',
+        striped:true,
+        columns: [
+            {
+                checkbox: true
+            },
+            {
+                field: 'id',
+                title: '序号',
+                visible: false //隐藏
+            },
+            {
+                field: 'parentId',
+                visible: false, //隐藏
+                title: '父id'
+            },
+            {
+                field: 'companyId',
+                visible: false, //隐藏
+                title: '公司编号'
+            },
+            {
+                field: 'code',
+                title: '编号'
+                
+            },
+            {
+                field: 'name',
+                title: '名称'
+            },
+            {
+                field: 'companyName',
+                title: '公司名称'
+            },
+            {
+                field: 'status',
+                title: '状态',
+                formatter: function (value, row, index) {
+                    var actions = [];
+                    if(value==0){
+                        actions.push('<span class="label label-danger">关闭</span>');
+                    }else if(value==1){
+                        actions.push('<span class="label label-primary">开启</span>');
+                    }
+                    return actions.join('');
+                }
+            },
+            {
+                field: 'orderNum',
+                title: '排序',
+                sortable:true,//设置true为允许列可以排序
+                order: 'asc' //排序顺序
+            },
+            {
+                title: '操作',
+                formatter: function (value, row, index) {
+                    var id = row.id;
+                    var actions = [];
+                    if(row.id!=1){
+                        actions.push('<a class="btn btn-success btn-xs"  href="#" onclick="edit(\'' + row.id + '\')"><i class="fa fa-edit"></i>编辑</a> ');
+                        actions.push('<a class="btn btn-danger btn-xs" href="#" onclick="remove(\'' + row.id + '\')"><i class="fa fa-remove"></i>删除</a>');
+                    }
+                    return actions.join('');
+                }
+            }
+        ],
+        onAll: function(data) {
+            console.log("onAll");
+            return false;
+        },
+        onLoadSuccess: function(data) {
+            console.log("onLoadSuccess");
+            return false;
+        },
+        onLoadError: function(status) {
+            console.log("onLoadError");
+            return false;
+        },
+        onClickCell: function(field, value, row, $element) {
+            console.log("onClickCell",row);
+            return false;
+        },
+        onDblClickCell: function(field, value, row, $element) {
+            console.log("onDblClickCell",row);
+            return false;
+        },
+        onClickRow: function(row, $element) {
+            console.log("onClickRow",row);
+            return false;
+        },
+        onDblClickRow: function(row, $element) {
+            console.log("onDblClickRow",row);
+            return false;
+        }
+
+    });
+    $("#selectBtn").click(function(){
+        var selecteds = $('#demo').bootstrapTreeTable('getSelections');
+        $.each(selecteds,function(_i,_item){
+            console.log(_item);
+        });
+        alert("看console");
+    })
+
+    var _expandFlag_all = false;
+    $("#expandAllBtn").click(function(){
+        if(_expandFlag_all){
+            $('#demo').bootstrapTreeTable('expandAll');
+        }else{
+            $('#demo').bootstrapTreeTable('collapseAll');
+        }
+        _expandFlag_all = _expandFlag_all?false:true;
+    })
+    var _showFlag = true;
+    $("#showColumnBtn").click(function(){
+        if(_showFlag){
+            $('#demo').bootstrapTreeTable('hideColumn',"orderNum");
+        }else{
+            $('#demo').bootstrapTreeTable('showColumn',"orderNum");
+        }
+        _showFlag = _showFlag?false:true;
+    })
+    $("#destroyBtn").click(function(){
+        $('#demo').bootstrapTreeTable('destroy');
+    })
+
+
+</script>
+<script type="text/javascript">
+
+    function add(){
+        $.modal.open("添加公司", createUrl);
+    }
+
+    function batRemove(){
+
+        var rows = $('#demo').bootstrapTreeTable('getSelections');
+        if (rows.length == 0) {
+            $.modal.alertWarning("请至少选择一条记录");
+            return
+        }
+        $.modal.confirm("确认要删除选中的" + rows.length + "条数据吗?", function() {
+            var rowid=[];
+            for ( var i in rows) {
+                rowid.push(rows[i].id);
+            }
+            var url = removeUrl;
+            var data = {
+                "ids": rowid.join()
+            };
+            $.operate.submit(url, "post", "json", data);
+        })
+    }
+
+    function edit(id){
+        var url = updateUrl.replace("{id}", id);
+        $.modal.open("修改公司", url);
+    }
+
+    function remove(id){
+
+        $.modal.confirm("确定删除该条公司信息吗?", function() {
+            var url = removeUrl.replace("{id}", id);
+            var data = {
+                "ids": id
+            };
+            $.operate.submit(url, "post", "json", data);
+        })
+    }
+
+
+    //重写刷新方法
+    $.table.refresh=function() {
+        $('#demo').bootstrapTreeTable("refresh",{
+            url:dataUrl,
+            silent:true
+        });
+    }
+</script>
+
+</body>
+
+
+</html>

+ 228 - 0
web/monitor-web-sxjn/src/main/resources/templates/admin/sysWindpowerstation/tree2.html

@@ -0,0 +1,228 @@
+<!DOCTYPE html>
+<html xmlns:th="http://www.thymeleaf.org"
+      xmlns:sec="http://www.pollix.at/thymeleaf/shiro">
+<head th:replace="admin/common/html/tableHead :: tableHead(~{::title},~{::link},~{::style})">
+    <title th:text=${title}></title>
+    <!-- 这儿引用单独的css link -->
+    <!-- Ladda for Bootstrap 3按钮加载进度插件 -->
+    <link rel="stylesheet" th:href="@{/static/admin/assets/js/button/ladda/ladda.min.css}">
+    <!-- treeview -->
+    <link th:href="@{/static/admin/assets/js/bootstrap/bootstrap-treeview/css/bootstrap-treeview.css}" rel="stylesheet"/>
+
+    <style type="text/css">
+        .content-wrap {
+            padding: 0px;
+        }
+        body {
+            color: #9ea7b3;
+            font-family: "Open Sans", Arial, sans-serif!important;
+            font-size: 13px!important;
+            line-height: 20px;
+            overflow-x: hidden!important;
+            min-height: 100%;
+            z-index: -2;
+            margin: 0px !important;
+            background: url() no-repeat top center fixed;
+            -moz-background-size: cover;
+            -webkit-background-size: cover;
+            -o-background-size: cover;
+            background-size: cover;
+        }
+        label.error {
+            position: absolute;
+            right: 18px;
+            top: 5px;
+            color: #ef392b;
+            font-size: 12px;
+        }
+    </style>
+
+</head>
+<body>
+
+<div id="fcapp" class="content-wrap">
+    <div class="row">
+        <div class="col-sm-12">
+            <div class="nest" id="elementClose">
+                <div class="">
+                </div>
+                <div class="body-nest" id="element">
+                    <div class="panel-body">
+                        <form  class="form-horizontal m" id="form-add">
+                            <div class="form-group">
+                                <div class="col-sm-8">
+                                    <div id="tree"></div>
+                                </div>
+                            </div>
+                            <div class="form-group">
+                                <div class="form-control-static col-sm-offset-9">
+                                    <button type="button" class="btn btn-primary" onclick="$.modal.close()">提交</button>
+                                    <button onclick="$.modal.close()" class="btn btn-danger" type="button">关闭</button>
+                                </div>
+                            </div>
+                        </form>
+                    </div>
+                </div>
+            </div>
+        </div>
+    </div>
+</div>
+
+<!-- 通用js -->
+<div th:include="admin/common/html/js :: onload_js"></div>
+<!-- 弹窗 -->
+<script th:src="@{/static/admin/assets/js/layer/layer.js}" type="text/javascript"></script>
+<!-- 遮罩层 -->
+<script th:src="@{/static/admin/assets/js/blockUI/jquery.blockUI.js}" type="text/javascript"></script>
+<!--bootstarp threeView -->
+<script th:src="@{/static/admin/assets/js/bootstrap/bootstrap-treeview/js/bootstrap-treeview.js}" type="text/javascript"></script>
+<script th:src="@{/static/admin/assets/js/bootstrap/js/base_list.js}" type="text/javascript"></script>
+
+
+<script type="text/javascript">
+
+    //添加方法
+    function add() {
+        var dataFormJson=$("#form-add").serialize();
+        $.ajax({
+            cache : true,
+            type : "POST",
+            url : rootPath + "/SysWindpowerstationController/add",
+            data :dataFormJson,
+            async : false,
+            error : function(request) {
+                $.modal.alertError("系统错误");
+            },
+            success : function(data) {
+                $.operate.saveSuccess(data);
+            }
+        });
+    }
+
+
+    /***权限配置***/
+
+    function getTree() {
+        var tree = [];
+        $.ajax({
+            url: rootPath + "/SysWindpowerstationController/tree/0",
+            type:"post",
+            async : false,
+            cache : true,
+            error : function(request) {
+                $.modal.alertError("系统错误");
+            },
+            success : function(data) {
+                if(!$.common.isEmpty(data)&&data.code==200) {
+
+                    var children = data['nodes'];
+
+
+                    $.each(children, function (index, item) {     //静态方法each()要两个参数,第一个参数是操作对象,第二个参数是回调函数
+                        alert(item.text);
+
+                        if (item.text.includes(str2))
+                        {
+                            item.state.checked=true;
+                        }
+                    });
+
+
+                    tree.push(data.data);
+                }
+            }
+
+
+        })
+        return tree;
+    }
+
+
+    //赋值给父菜单
+    // function loadObj(data){
+    // 	var treeId = data.id;
+    // 	var treeName = data.text;
+    //
+    // 	if(treeId != "1") {
+    // 		parent.$("#parentId").val(treeId);
+    // 		parent.$("#pidName").val(treeName);
+    //         parent.$("#parentIdcm").val(treeId);
+    //         parent.$("#parentnamecm").val(treeName);
+    // 		var index = parent.layer.getFrameIndex(window.name); // 获取窗口索引
+    // 		parent.layer.close(index);
+    // 	}
+    // 	else {
+    // 		$.modal.alertError("主菜单不能选择");
+    // 	}
+    //
+    //
+    //
+    // }
+
+    var str1 =parent.$("#parentId").val();
+    var str2 =parent.$("#pidName").val();
+
+    $(function() {
+
+        $('#tree').treeview({
+            levels : 3,////设置初始化展开几级菜单 默认为2
+            showCheckbox : 1,//这里之所以写1,是因为我引得js源码里定义1为true  checkbox
+            multiSelect : 1,//这里之所以写1,是因为我引得js源码里定义1为true  多选
+            data : getTree(),
+            color : "#000000",//设置字体加载颜色
+            backColor : "#FFFFFF",//设置背景颜色
+            selectedColor : "#428bca",//设置选中的字体颜色
+            highlightSelected:true,     //是否选中高亮显示
+            onhoverColor: "#FF00FF",    //鼠标滑过的颜色
+            showBorder:true,//是否显示边框
+            onNodeChecked(event, node){
+
+                if(node.id != "1") {
+
+                    if (str1.length > 0) {
+
+                        str1 = str1 + node.id + ',';
+                        str2 = str2 + node.text + ',';
+
+                    } else {
+                        str1 = node.id + ',';
+                        str2 = node.text + ',';
+                    }
+                    parent.$("#parentId").val(str1);
+                    parent.$("#pidName").val(str2);
+
+                }else {
+                    $.modal.alertError("主菜单不能选择");
+                }
+            },
+            onNodeUnchecked(event, node){
+
+                parent.$("#parentId").val(str1.replace(node.text + ",", ""));
+
+                parent.$("#pidName").val(str2.replace(node.text + ",", ""));
+            },
+
+            nodeSelected (event, node){
+
+
+            },
+            nodeChecked (event, node){//一个节点被checkedc
+            },
+            onNodeUnchecked : function(event, node) { //取消选中节点
+            }
+
+        });
+
+    })
+
+
+
+
+
+</script>
+
+
+</body>
+
+
+</html>

+ 4 - 4
web/monitor-web-sxjn/src/main/resources/templates/admin/user/add.html

@@ -48,15 +48,15 @@
                             <div class="form-group">
                                 <label class="col-sm-3 control-label ">公司:</label>
                                 <div class="col-sm-8">
-                                    <input class="form-control" type="hidden" id="parentIdCom" name="comId"/>
-                                    <input class="form-control" readonly="true" type="text" id="pidNameCom" onclick="selectCompanyMenuTree()" />
+                                    <input class="form-control" type="hidden" id="parentIdcm" name="comId"/>
+                                    <input class="form-control" readonly="true" type="text" id="parentnamecm" onclick="selectCompanyMenuTree()" />
                                 </div>
                             </div>
 							<div class="form-group">
 								<label class="col-sm-3 control-label ">部门:</label>
 								<div class="col-sm-8">
-									<input class="form-control" type="hidden" id="parentId" name="depId"/>
-									<input class="form-control" readonly="true" type="text" id="pidName" onclick="selectMenuTree()" />
+									<input class="form-control" type="hidden" id="parentIddep" name="depId"/>
+									<input class="form-control" readonly="true" type="text" id="parentnamedep" onclick="selectMenuTree()" />
 								</div>
 							</div>
 							

+ 4 - 4
web/monitor-web-sxjn/src/main/resources/templates/admin/user/edit.html

@@ -46,16 +46,16 @@
                             <div class="form-group">
                                 <label class="col-sm-3 control-label ">公司:</label>
                                 <div class="col-sm-8">
-                                    <input class="form-control" type="hidden" id="parentIdCom" name="comId" th:value="*{comId}"/>
-                                    <input class="form-control" readonly="true" type="text" th:value="*{comName}" id="pidNameCom" onclick="selectCompanyMenuTree()" />
+                                    <input class="form-control" type="hidden" id="parentIdcm" name="comId" th:value="*{comId}"/>
+                                    <input class="form-control" readonly="true" type="text" th:value="*{comName}" id="parentnamecm" onclick="selectCompanyMenuTree()" />
                                 </div>
                             </div>
 
 							<div class="form-group">
 								<label class="col-sm-3 control-label ">部门:</label>
 								<div class="col-sm-8">
-									<input class="form-control" type="hidden" id="parentId" name="depId" th:value="*{depId}"/>
-									<input class="form-control" readonly="true" type="text" th:value="*{depName}" id="pidName" onclick="selectMenuTree()" />
+									<input class="form-control" type="hidden" id="parentIddep" name="depId" th:value="*{depId}"/>
+									<input class="form-control" readonly="true" type="text" th:value="*{depName}" id="parentnamedep" onclick="selectMenuTree()" />
 								</div>
 							</div>
 							

+ 4 - 4
web/monitor-web-sxjn/src/main/resources/templates/admin/uservue/add.html

@@ -48,15 +48,15 @@
                             <div class="form-group">
                                 <label class="col-sm-3 control-label ">公司:</label>
                                 <div class="col-sm-8">
-                                    <input class="form-control" type="hidden" id="parentIdCom" name="comId"/>
-                                    <input class="form-control" readonly="true" type="text" id="pidNameCom" onclick="selectCompanyMenuTree()" />
+                                    <input class="form-control" type="hidden" id="parentIdcm" name="comId"/>
+                                    <input class="form-control" readonly="true" type="text" id="parentnamecm" onclick="selectCompanyMenuTree()" />
                                 </div>
                             </div>
 							<div class="form-group">
 								<label class="col-sm-3 control-label ">部门:</label>
 								<div class="col-sm-8">
-									<input class="form-control" type="hidden" id="parentId" name="depId"/>
-									<input class="form-control" readonly="true" type="text" id="pidName" onclick="selectMenuTree()" />
+									<input class="form-control" type="hidden" id="parentIddep" name="depId"/>
+									<input class="form-control" readonly="true" type="text" id="parentnamedep" onclick="selectMenuTree()" />
 								</div>
 							</div>
 							

+ 4 - 4
web/monitor-web-sxjn/src/main/resources/templates/admin/uservue/edit.html

@@ -46,16 +46,16 @@
                             <div class="form-group">
                                 <label class="col-sm-3 control-label ">公司:</label>
                                 <div class="col-sm-8">
-                                    <input class="form-control" type="hidden" id="parentIdCom" name="comId" th:value="*{comId}"/>
-                                    <input class="form-control" readonly="true" type="text" th:value="*{comName}" id="pidNameCom" onclick="selectCompanyMenuTree()" />
+                                    <input class="form-control" type="hidden" id="parentIdcm" name="comId" th:value="*{comId}"/>
+                                    <input class="form-control" readonly="true" type="text" th:value="*{comName}" id="parentnamecm" onclick="selectCompanyMenuTree()" />
                                 </div>
                             </div>
 
 							<div class="form-group">
 								<label class="col-sm-3 control-label ">部门:</label>
 								<div class="col-sm-8">
-									<input class="form-control" type="hidden" id="parentId" name="depId" th:value="*{depId}"/>
-									<input class="form-control" readonly="true" type="text" th:value="*{depName}" id="pidName" onclick="selectMenuTree()" />
+									<input class="form-control" type="hidden" id="parentId" name="parentIddep" th:value="*{depId}"/>
+									<input class="form-control" readonly="true" type="text" th:value="*{depName}" id="parentnamedep" onclick="selectMenuTree()" />
 								</div>
 							</div>
 							

+ 79 - 0
web/monitor-web-sxjn/src/main/resources/templates/error/666.html

@@ -0,0 +1,79 @@
+<!DOCTYPE html>
+<html xmlns:th="http://www.thymeleaf.org" 
+      xmlns:sec="http://www.pollix.at/thymeleaf/shiro">
+<head th:replace="admin/common/html/head :: head_Normal(~{::title},~{::link},~{::style})">
+
+<title th:text=${title}></title>
+<!-- 这儿引用单独的css link -->
+<link rel="stylesheet" th:href="@{/static/admin/assets/js/button/ladda/ladda.min.css}">
+<link rel="stylesheet" th:href="@{/static/admin/assets/css/extra-pages.css}">
+<style type="text/css">
+/**
+*这里写单独的css样式
+*/
+ body {
+        overflow:hidden!important;
+        padding-top: 120px;
+    }
+</style>
+
+</head>
+
+<body>
+
+
+
+<div id="awwwards" class="right black">
+	<a href="#" target="_blank">best websites of the world</a>
+</div>
+    <!-- Preloader -->
+    <div id="preloader">
+        <div id="divstatus">&nbsp;</div>
+    </div>
+
+
+    <div class="logo-error">
+        <h1>Gyee_Frame_HF
+            <span>v1.0</span>
+        </h1>
+    </div>
+
+    <!-- Main content -->
+    <section class="page-error">
+
+        <div class="error-page">
+            <h2 class="headline text-info">系统正在启动中。。。。。。</h2>
+            <div class="error-content">
+                <h3><i class="fa fa-warning text-yellow"></i> 系统正在初始化中,请稍后刷新再试!</h3>
+
+                <form class='search-form'>
+                    <input type="text" name="search" class='form-control' placeholder="Search" />
+                </form>
+            </div>
+            <!-- /.error-content -->
+        </div>
+        <!-- /.error-page -->
+
+    </section>
+
+
+
+
+
+   <!-- END 右侧隐藏滑块内容-->
+
+<!-- 通用js -->
+<div th:include="admin/common/html/js :: onload_js">
+   
+</div>
+ <script type="text/javascript">
+//session获取iframe处理
+if (window != top) {
+    top.location.href = location.href;
+}
+</script>   
+
+</body>
+
+
+</html>

+ 1 - 1
web/monitor-web-sxjn/src/test/java/test/InitialPointServiceTest.java

@@ -25,7 +25,7 @@ public class InitialPointServiceTest {
 //        System.out.println("结束导出风机测点。。。。。。");
 
         System.out.println("开始导出风场测点。。。。。。");
-        initialPointEdosHfService.initalFc(false);
+        initialPointEdosHfService.initalFc();
         System.out.println("结束导出风场测点。。。。。。");
 //
 //