Browse Source

Merge branch 'master' of http://47.100.37.243:10080/ZHOU/yunsu

sunyadv 5 năm trước cách đây
mục cha
commit
443df7d1f2

+ 4 - 0
cloud-model/src/main/java/com/hssx/cloudmodel/controller/MouldController.java

@@ -95,5 +95,9 @@ public class MouldController {
         HttpRespMsg msg = mouldService.getMoildDetail(mouldVO);
         return msg;
     }
+
+
+
+
 }
 

+ 1 - 0
cloud-model/src/main/java/com/hssx/cloudmodel/entity/vo/UserVO.java

@@ -21,4 +21,5 @@ public class UserVO extends User {
     private String token;
     private Integer isManager = 0;
     private String powers;
+    private Integer mouldId;//模具id
 }

+ 1 - 1
cloud-model/src/main/java/com/hssx/cloudmodel/util/CodeGenerator.java

@@ -204,7 +204,7 @@ public class CodeGenerator {
         //若想要生成的实体类继承某个Controller,则可打开下面注释。写上需要继承的Controller的位置即可
 //        strategy.setSuperControllerClass("com.baomidou.ant.common.BaseController");
         //此处user是表名,多个英文逗号分割
-        strategy.setInclude("tb_project_operation_dynamics");
+        strategy.setInclude("tb_mould_file");
 //        strategy.setExclude();//数据库表全生成
 //        strategy.setInclude(scanner("user").split(","));//表名,多个英文逗号分割
         strategy.setControllerMappingHyphenStyle(true);

+ 46 - 28
cloud-socket/src/com/js/kbt/socket/UserHandler.java

@@ -56,7 +56,7 @@ public class UserHandler extends SimpleChannelInboundHandler<String> {
             {
         System.out.println("收到==="+arg1+"\n");
         String ret = processMsg(arg1);
-        sendMsg(ret);
+//        sendMsg(ret);
     }
     
     private String processMsg(String input) {
@@ -119,27 +119,33 @@ public class UserHandler extends SimpleChannelInboundHandler<String> {
     	} else {
     		logger.error("调用基站解析平台出错: " + resp);
     	}
-    	
+    	String crcStr = input.substring(input.length() - 4);
+    	item.setCrcCode(""+reverseParseHex(crcStr));
     	//存入数据库
     	mouldHistoryMapper.insertSelective(item);
     	//模具开合记录
     	int cnt = item.getRunCnt();
     	int start = 69;
     	System.out.println("开合模次数="+cnt);
-    	for (int pos=0; pos<cnt; pos++ ) {
-    		//合模时间
-    		MouldHistoryTime time = new MouldHistoryTime();
-    		time.setHistoryId(item.getId());
-    		time.setSeq(pos + 1);
-    		Date closeTime = parseDate(input, start, pos, 0);
-    		time.setCloseTime(closeTime);
-    		//开模时间
-    		Date openTime = parseDate(input, start, pos, 6);
-    		time.setOpenTime(openTime);
-    		int timeCost = (int) (openTime.getTime() - closeTime.getTime());
-    		time.setTimeCost(timeCost);
-    		mouldHistoryTimeMapper.insertSelective(time);
+    	logger.info("时间=="+input.substring(start*2));
+    	int end = (start+(cnt-1)*6+5 + 6)*2;
+    	if (input.length() >= end) {//防止传过来的只有开合模次数,却没有时间
+    		for (int pos=0; pos<cnt; pos++ ) {
+        		//合模时间
+        		MouldHistoryTime time = new MouldHistoryTime();
+        		time.setHistoryId(item.getId());
+        		time.setSeq(pos + 1);
+        		Date closeTime = parseDate(input, start, pos, 0);
+        		time.setCloseTime(closeTime);
+        		//开模时间
+        		Date openTime = parseDate(input, start, pos, 6);
+        		time.setOpenTime(openTime);
+        		int timeCost = (int) (openTime.getTime() - closeTime.getTime());
+        		time.setTimeCost(timeCost);
+        		mouldHistoryTimeMapper.insertSelective(time);
+        	}
     	}
+    	
     	MouldHistoryTimeExample exp = new MouldHistoryTimeExample();
     	exp.createCriteria().andHistoryIdEqualTo(item.getId());
     	List<MouldHistoryTime> list = mouldHistoryTimeMapper.selectByExample(exp);
@@ -214,7 +220,7 @@ public class UserHandler extends SimpleChannelInboundHandler<String> {
     	return Integer.parseInt(str, 16);
     }
     
-    private Date parseDate(String input, int start, int pos, int dateStartPos) {
+    private static Date parseDate(String input, int start, int pos, int dateStartPos) {
     	String year = input.substring((start+pos*6 + dateStartPos)*2, (start+pos*6 + 1 + dateStartPos)*2);
 		String month = input.substring((start+pos*6+1 + dateStartPos)*2, (start+pos*6 + 2 + dateStartPos)*2);
 		String day = input.substring((start+pos*6+2 + dateStartPos)*2, (start+pos*6 + 3 + dateStartPos)*2);
@@ -223,12 +229,17 @@ public class UserHandler extends SimpleChannelInboundHandler<String> {
 		String ss = input.substring((start+pos*6+5 + dateStartPos)*2, (start+pos*6 + 6 + dateStartPos)*2);
 		StringBuilder sb = new StringBuilder();
 		int yearInt = Integer.parseInt(year, 16);
-		sb.append(yearInt < 100?"20":"2");
-		sb.append(yearInt).append("-");
-		int monthInt = Integer.parseInt(month, 16);
-		sb.append(monthInt<10?"0":"").append(monthInt).append("-");
-		int dayInt = Integer.parseInt(day, 16);
-		sb.append(dayInt<10?"0":"").append(dayInt);
+		if (yearInt == 0) {
+			sb.append("2019-01-01");
+		} else {
+			sb.append(yearInt < 100?"20":"2");
+			sb.append(yearInt).append("-");
+			int monthInt = Integer.parseInt(month, 16);
+			sb.append(monthInt<10?"0":"").append(monthInt).append("-");
+			int dayInt = Integer.parseInt(day, 16);
+			sb.append(dayInt<10?"0":"").append(dayInt);
+		}
+		
 		Date parseDate = null;
 		try {
 			parseDate = new SimpleDateFormat("yyyy-MM-dd").parse(sb.toString());
@@ -360,12 +371,19 @@ public class UserHandler extends SimpleChannelInboundHandler<String> {
 	
 	public static void main(String[] args) {
 //		String str = "1F51";
-		String str = "E85F";
-		String temp = "0x"+str;
-		int i = Integer.decode(temp);
-		System.out.println(i);
-		int p = reverseParseHex(str);
-		System.out.println(p);
+		String str = "FAAF470000000000000000000000003137333030303239333810010000000000000000000000000000000000000000001F51E85F0000000000004800646400010001000000ACE1";
+//		String temp = "0x"+str;
+//		int i = Integer.decode(temp);
+//		System.out.println(i);
+//		int p = reverseParseHex(str);
+//		System.out.println(p);
+//		int start = 69;
+//		System.out.println(str.substring(69*2));
+//		Date d = parseDate(str, start, 0, 0);
+//		System.out.println(d.toGMTString());
+		str = str.substring(str.length() - 4);
+		System.out.println(str);
+		System.out.println(reverseParseHex(str));
 	}
 	
 }