zxj 1 долоо хоног өмнө
parent
commit
393bf96954

+ 22 - 2
o2server/x_jpush_assemble_control/src/main/java/com/x/jpush/assemble/control/jaxrs/device/ActionBind.java

@@ -37,10 +37,30 @@ public class ActionBind extends BaseAction {
 			Business business = new Business(emc);
 			String person = effectivePerson.getDistinguishedName();
 			String unique = deviceUnique(wi.getDeviceType(), wi.getDeviceName(), PushDevice.PUSH_TYPE_JPUSH, person);
-			if (business.pushDeviceFactory().existDeviceUnique(unique)) {
+			if (business.pushDeviceFactory().existDevicePerson(person)) {
 				wraps.setValue(true);
 				result.setMessage("当前设备已存在!");
-			} else {
+				//更新一下设备ID
+				PushDevice 	pd = business.pushDeviceFactory().findDeviceByPerson(person);
+				if(pd != null){
+					pd.setDeviceId(wi.getDeviceName());
+					pd.setDeviceType(wi.getDeviceType());
+					////pd.setPerson(person);
+					pd.setPushType(PushDevice.PUSH_TYPE_JPUSH);
+					pd.setUnique(unique);
+					emc.beginTransaction(PushDevice.class);
+					emc.persist(pd, CheckPersistType.all);
+					emc.commit();
+					wraps.setValue(true);
+				}else{
+					logger.info("db设备记录不存在!","该用户绑定的设备信息有异常!!!!!");
+				}
+			}
+//			if (business.pushDeviceFactory().existDeviceUnique(unique)) {
+//				wraps.setValue(true);
+//				result.setMessage("当前设备已存在!");
+//			}
+     		else {
 				PushDevice pushDevice = new PushDevice();
 				pushDevice.setDeviceId(wi.getDeviceName());
 				pushDevice.setDeviceType(wi.getDeviceType());