mes-aps/src/main/java/com/chinaztt/mes/aps/controller/CapabilityController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
mes-basic/src/main/java/com/chinaztt/mes/basic/controller/PartController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
mes-basic/src/main/java/com/chinaztt/mes/basic/service/impl/BasicParamTemplateServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
mes-common/pom.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
mes-common/src/main/java/com/chinaztt/mes/common/aop/MybatisPlusDeleteAspect.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
mes-common/src/main/java/com/chinaztt/mes/common/config/WebSocketConfig.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
mes-common/src/main/java/com/chinaztt/mes/common/server/WebSocketServer.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
mes-web/src/main/java/com/chinaztt/mes/App.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
mes-web/src/main/resources/bootstrap.yml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
mes-aps/src/main/java/com/chinaztt/mes/aps/controller/CapabilityController.java
@@ -47,7 +47,7 @@ @ApiOperation(value = "æ¥è¯¢ææè½å", notes = "æ¥è¯¢ææè½å") @GetMapping("/all") @PreAuthorize("@pms.hasPermission('aps_capability_view')") //@PreAuthorize("@pms.hasPermission('aps_capability_view')") public R getAllCapability() { return R.ok(capabilityService.list()); } mes-basic/src/main/java/com/chinaztt/mes/basic/controller/PartController.java
@@ -86,6 +86,7 @@ @ApiOperation(value = "触åé¶ä»¶", notes = "触åé¶ä»¶") @SysLog("触åé¶ä»¶") @PostMapping("/triggerAdd") @Inner(value = false) public R triggerAdd(@RequestBody PartVo partVo) { return R.ok(partService.triggerAdd(partVo)); } mes-basic/src/main/java/com/chinaztt/mes/basic/service/impl/BasicParamTemplateServiceImpl.java
@@ -214,12 +214,18 @@ Map second = JsonUtil.jsonToPojo(JsonUtil.jsonToString(s), Map.class); List<ParamJoinTemplate> collectSecond = paramJoinTemplates.stream().filter(p -> Objects.equals(s.getId(), p.getTechnologyOperationParamId())).collect(Collectors.toList()); if(collectSecond.size()>0){ second.put("paramValue",collectSecond.get(0).getDefaultValue()); s.setParamValue(String.valueOf(second.get("paramValue"))); System.out.println("第äºå±éåå=====ã"+collectSecond.get(0).getDefaultValue()); if(!org.springframework.util.StringUtils.hasText(collectSecond.get(0).getDefaultValue())){ s.setParamValue(""); }else { second.put("paramValue",collectSecond.get(0).getDefaultValue()); s.setParamValue(collectSecond.get(0).getDefaultValue()); } }else { second.put("paramValue",""); s.setParamValue(String.valueOf(second.get("paramValue"))); s.setParamValue(""); } System.out.println("第äºå±éåå=====ã"+s.getParamValue()); Optional.ofNullable(second.get("type")).ifPresent(o->{ List<SysDictItem> collect1 = dict.stream().filter(d -> Objects.equals(String.valueOf(d.getValue()), second.get("type"))).collect(Collectors.toList()); if(collect1.size()>0){ @@ -235,6 +241,8 @@ queryWrapperThird.lambda().eq(ParamJoinTemplate::getParentId,Long.valueOf(String.valueOf(s.getId()))); List<ParamJoinTemplate> paramJoinTemplates2 = paramJoinTemplateMapper.selectList(queryWrapperThird); third.removeIf(t -> paramJoinTemplates2.stream().noneMatch(p->Objects.equals(p.getTechnologyOperationParamId(),t.getId()))); System.out.println("=11111111111111111==========================================>"+Objects.equals(s.getParamValue(),"null")); boolean thirdIsNull =third.isEmpty(); if(third.isEmpty()){ Param p = new Param(); p.setType(s.getType()); @@ -246,6 +254,9 @@ third.add(p); } third.forEach(t->{ if(thirdIsNull){ System.out.println("第äºå±å°ç¬¬ä¸å±======ã"+t.getParamValue()); } Optional.ofNullable(t.getType()).ifPresent(o->{ List<SysDictItem> collect1 = dict.stream().filter(d -> Objects.equals(String.valueOf(d.getValue()), t.getType())).collect(Collectors.toList()); if(collect1.size()>0){ @@ -254,10 +265,17 @@ }); Map<String,Object> allMap = new HashMap<>(); List<ParamJoinTemplate> collectThird = paramJoinTemplates.stream().filter(p -> Objects.equals(t.getId(), p.getTechnologyOperationParamId())).collect(Collectors.toList()); if(collectThird.size()>0){ allMap.put("paramValue",collectThird.get(0).getDefaultValue()); if(collectThird.size()>0&&!thirdIsNull){ System.out.println("第ä¸å±====================ã"+collectThird.get(0)); if(!org.springframework.util.StringUtils.hasText(collectThird.get(0).getDefaultValue())){ t.setParamValue(""); }else { t.setParamValue(collectThird.get(0).getDefaultValue()); } }else { allMap.put("paramValue",""); if(!thirdIsNull) { t.setParamValue(""); } } allMap.put("code",pojo.get("code")); allMap.put("paramItem", com.chinaztt.mes.common.util.StringUtils.defaultString((String) pojo.get("parameterItem"),"")); @@ -270,7 +288,7 @@ //allMap.put("paramFormat", com.chinaztt.mes.common.util.StringUtils.defaultString(t.getParameterFormat(),"")); allMap.put("unit", com.chinaztt.mes.common.util.StringUtils.defaultString(t.getUnit(),"")); allMap.put("parentId",t.getParentId()); allMap.put("paramValue",t.getParamValue()); allMap.put("paramValue",com.chinaztt.mes.common.util.StringUtils.defaultString(t.getParamValue(),"")); all.add(allMap); }); }); mes-common/pom.xml
@@ -26,6 +26,11 @@ <artifactId>commons-text</artifactId> <version>1.3</version> </dependency> <!-- å¼å ¥websocket --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-websocket</artifactId> </dependency> <dependency> <groupId>commons-net</groupId> mes-common/src/main/java/com/chinaztt/mes/common/aop/MybatisPlusDeleteAspect.java
@@ -140,6 +140,7 @@ sql = String.format(LINK_COUNT_SQL, linkTableInfo.getTableName(), appendSql, linkTableInfo.getLogicDeleteSql(true, true)); System.out.println("æ§è¡sql=============================>"+sql); Long count = jdbcTemplate.queryForObject(sql, Long.class, valList.toArray()); if (count > 0) { String ex = String.format(EXCEPTION_STR, linkFieldInfo.getSourceTable(), linkFieldInfo.getSourceField(), linkFieldInfo.getLinkedTable(), linkFieldInfo.getLinkedField()); mes-common/src/main/java/com/chinaztt/mes/common/config/WebSocketConfig.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,19 @@ package com.chinaztt.mes.common.config; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.web.socket.server.standard.ServerEndpointExporter; /** * @Author å¼ å®¾ * @Date 2023/11/13 */ @Configuration public class WebSocketConfig { @Bean public ServerEndpointExporter serverEndpointExporter() { return new ServerEndpointExporter(); } } mes-common/src/main/java/com/chinaztt/mes/common/server/WebSocketServer.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,178 @@ //package com.chinaztt.mes.common.server; //import com.alibaba.fastjson.JSON; //import com.alibaba.fastjson.JSONObject; //import lombok.extern.slf4j.Slf4j; //import org.apache.commons.lang3.StringUtils; //import org.springframework.stereotype.Component; // //import javax.websocket.*; //import javax.websocket.server.PathParam; //import javax.websocket.server.ServerEndpoint; //import java.io.IOException; //import java.util.HashMap; //import java.util.Iterator; //import java.util.concurrent.ConcurrentHashMap; ///** // * @Author å¼ å®¾ // * @Date 2023/11/13 // * @Params: WebSocketServer.sendInfo(使ç¨JSON,ç¨æ·å); // * @Return // */ ////@ServerEndpoint("/websocket/{userId}") //@Component //@Slf4j //public class WebSocketServer { // // /**éæåéï¼ç¨æ¥è®°å½å½åå¨çº¿è¿æ¥æ°ãåºè¯¥æå®è®¾è®¡æçº¿ç¨å®å ¨çã*/ // private static int onlineCount = 0; // /**concurrentå ç线ç¨å®å ¨Setï¼ç¨æ¥åæ¾æ¯ä¸ªå®¢æ·ç«¯å¯¹åºçMyWebSocket对象ã*/ // private static ConcurrentHashMap<String, WebSocketServer> webSocketMap = new ConcurrentHashMap<>(); // /**ä¸æä¸ªå®¢æ·ç«¯çè¿æ¥ä¼è¯ï¼éè¦éè¿å®æ¥ç»å®¢æ·ç«¯åéæ°æ®*/ // private Session session; // /**æ¥æ¶userId*/ // private String userId=""; // // /** // * è¿æ¥å»ºç«æåè°ç¨çæ¹æ³ // * */ // @OnOpen // public void onOpen(Session session, @PathParam("userId") String userId) { // this.session = session; // this.userId=userId; // if(webSocketMap.containsKey(userId)){ // webSocketMap.remove(userId); // //å å ¥setä¸ // }else{ // webSocketMap.put(userId,this); // //å å ¥setä¸ // addOnlineCount(); // //å¨çº¿æ°å 1 // } // // log.info("ç¨æ·è¿æ¥:"+userId+",å½åå¨çº¿äººæ°ä¸º:" + getOnlineCount()); // // try { // HashMap<Object, Object> map = new HashMap<>(); // map.put("key","è¿æ¥æå"); // sendMessage(JSON.toJSONString(map)); // } catch (IOException e) { // log.error("ç¨æ·:"+userId+",ç½ç»å¼å¸¸!!!!!!"); // } // } // // /** // * è¿æ¥å ³éè°ç¨çæ¹æ³ // */ // @OnClose // public void onClose() { // if(webSocketMap.containsKey(userId)){ // webSocketMap.remove(userId); // //ä»setä¸å é¤ // subOnlineCount(); // } // log.info("ç¨æ·éåº:"+userId+",å½åå¨çº¿äººæ°ä¸º:" + getOnlineCount()); // } // // /** // * æ¶å°å®¢æ·ç«¯æ¶æ¯åè°ç¨çæ¹æ³ // * // * @param message 客æ·ç«¯åéè¿æ¥çæ¶æ¯*/ // @OnMessage // public void onMessage(String message, Session session) { // log.info("ç¨æ·æ¶æ¯:"+userId+",æ¥æ:"+message); // //å¯ä»¥ç¾¤åæ¶æ¯ // //æ¶æ¯ä¿åå°æ°æ®åºãredis // if(StringUtils.isNotBlank(message)){ // try { // //è§£æåéçæ¥æ // JSONObject jsonObject = JSONObject.parseObject(message); // //追å åé人(鲿¢ä¸²æ¹) // jsonObject.put("fromUserId",this.userId); // String fromUserId=jsonObject.getString("fromUserId"); // //ä¼ éç»å¯¹åºtoUserIdç¨æ·çwebsocket // if(StringUtils.isNotBlank(fromUserId) && webSocketMap.containsKey(fromUserId)){ // webSocketMap.get(fromUserId).sendMessage(jsonObject.toJSONString()); // //èªå®ä¹-ä¸å¡å¤ç // //// DeviceLocalThread.paramData.put(jsonObject.getString("group"),jsonObject.toJSONString()); // }else{ // log.error("请æ±çuserId:"+fromUserId+"ä¸å¨è¯¥æå¡å¨ä¸"); // //å¦åä¸å¨è¿ä¸ªæå¡å¨ä¸ï¼åéå°mysqlæè redis // } // }catch (Exception e){ // e.printStackTrace(); // } // } // } // // /** // * åçé误æ¶å // * @param session // * @param error // */ // @OnError // public void onError(Session session, Throwable error) { // log.error("ç¨æ·é误:"+this.userId+",åå :"+error.getMessage()); // error.printStackTrace(); // } // /** // * å®ç°æå¡å¨ä¸»å¨æ¨é // */ // public void sendMessage(String message) throws IOException { // //å å ¥çº¿ç¨é // synchronized (session){ // try { // //忥åéä¿¡æ¯ // this.session.getBasicRemote().sendText(message); // } catch (IOException e) { // log.error("æå¡å¨æ¨é失败:"+e.getMessage()); // } // } // } // // // /** // * åéèªå®ä¹æ¶æ¯ // * */ // /** // * åéèªå®ä¹æ¶æ¯ // * @param message åéçä¿¡æ¯ // * @param toUserId å¦æä¸ºnullé»è®¤åéææ // * @throws IOException // */ // public static void sendInfo(String message,String toUserId) throws IOException { // //妿userId为空ï¼åææç¾¤ä½åé // if(StringUtils.isEmpty(toUserId)) { // //åææç¨æ·åéä¿¡æ¯ // Iterator<String> itera = webSocketMap.keySet().iterator(); // while (itera.hasNext()) { // String keys = itera.next(); // WebSocketServer item = webSocketMap.get(keys); // item.sendMessage(message); // } // } // //妿ä¸ä¸ºç©ºï¼ååéæå®ç¨æ·ä¿¡æ¯ // else if(webSocketMap.containsKey(toUserId)){ // WebSocketServer item = webSocketMap.get(toUserId); // item.sendMessage(message); // }else{ // log.error("请æ±çuserId:"+toUserId+"ä¸å¨è¯¥æå¡å¨ä¸"); // } // } // // public static synchronized int getOnlineCount() { // return onlineCount; // } // // public static synchronized void addOnlineCount() { // WebSocketServer.onlineCount++; // } // // public static synchronized void subOnlineCount() { // WebSocketServer.onlineCount--; // } // // public static synchronized ConcurrentHashMap<String, WebSocketServer> getWebSocketMap(){ // return WebSocketServer.webSocketMap; // } //} mes-web/src/main/java/com/chinaztt/mes/App.java
@@ -7,6 +7,7 @@ import org.springframework.boot.SpringApplication; import org.springframework.cloud.client.SpringCloudApplication; import org.springframework.cloud.client.discovery.EnableDiscoveryClient; import org.springframework.web.socket.config.annotation.EnableWebSocket; /** * @author ztt archetype @@ -19,6 +20,7 @@ @EnableZttFeignClients(basePackages = {"com.chinaztt.**"}) @EnableZttResourceServer @EnableZttXxlJob @EnableWebSocket public class App { public static void main(String[] args) { SpringApplication.run(App.class, args); mes-web/src/main/resources/bootstrap.yml
@@ -6,9 +6,9 @@ druid: username: postgres # password: postgres123 password: root2022 password: zsAdmin123! # å°é¢å¼åæ°æ®åº url: jdbc:postgresql://106.13.194.57:9015/postgres url: jdbc:postgresql://127.0.0.1:5432/postgres application: name: ztt-mes cloud: @@ -17,7 +17,7 @@ # password: nacos password: zttZTT123! discovery: server-addr: 106.13.194.57:8848 server-addr: 127.0.0.1:8848 metadata: # VERSION: 10.88.15.224 VERSION: 127.0.0.1