java110 лет назад: 6
Родитель
Сommit
5ec9d821b6

+ 9 - 7
Api/src/main/java/com/java110/api/bmo/applicationKey/impl/ApplicationKeyBMOImpl.java

@@ -226,12 +226,14 @@ public class ApplicationKeyBMOImpl extends ApiBaseBMO implements IApplicationKey
         String applicationKeyId = GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_applicationKeyId);
         paramInJson.put("applicationKeyId",applicationKeyId);
         //根据位置id 和 位置对象查询相应 设备ID
-        MachineDto machineDto = new MachineDto();
-        machineDto.setLocationObjId(paramInJson.getString("locationObjId"));
-        machineDto.setLocationTypeCd(paramInJson.getString("locationTypeCd"));
-        List<MachineDto> machineDtos = machineInnerServiceSMOImpl.queryMachines(machineDto);
-
-        Assert.listOnlyOne(machineDtos, "该位置还没有相应的门禁设备");
+        if(!paramInJson.containsKey("machineId")) {
+            MachineDto machineDto = new MachineDto();
+            machineDto.setLocationObjId(paramInJson.getString("locationObjId"));
+            machineDto.setLocationTypeCd(paramInJson.getString("locationTypeCd"));
+            List<MachineDto> machineDtos = machineInnerServiceSMOImpl.queryMachines(machineDto);
+            Assert.listOnlyOne(machineDtos, "该位置还没有相应的门禁设备");
+            paramInJson.put("machineId",machineDtos.get(0).getMachineId());
+        }
 
         JSONObject business = JSONObject.parseObject("{\"datas\":{}}");
         business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_SAVE_APPLICATION_KEY);
@@ -239,7 +241,7 @@ public class ApplicationKeyBMOImpl extends ApiBaseBMO implements IApplicationKey
         business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S);
         JSONObject businessApplicationKey = new JSONObject();
         businessApplicationKey.putAll(paramInJson);
-        businessApplicationKey.put("machineId", machineDtos.get(0).getMachineId());
+        //businessApplicationKey.put("machineId", machineId);
         businessApplicationKey.put("applicationKeyId", applicationKeyId);
         businessApplicationKey.put("state", "10002");
         businessApplicationKey.put("pwd",this.getRandom());

+ 17 - 1
Api/src/main/java/com/java110/api/listener/applicationKey/ApplyApplicationKeyListener.java

@@ -7,14 +7,18 @@ import com.java110.api.listener.AbstractServiceApiListener;
 import com.java110.core.annotation.Java110Listener;
 import com.java110.core.context.DataFlowContext;
 import com.java110.core.factory.GenerateCodeFactory;
+import com.java110.core.factory.SendSmsFactory;
+import com.java110.core.smo.common.ISmsInnerServiceSMO;
 import com.java110.core.smo.community.ICommunityInnerServiceSMO;
 import com.java110.core.smo.file.IFileInnerServiceSMO;
 import com.java110.core.smo.hardwareAdapation.IMachineInnerServiceSMO;
 import com.java110.dto.CommunityMemberDto;
 import com.java110.dto.file.FileDto;
 import com.java110.dto.hardwareAdapation.MachineDto;
+import com.java110.dto.msg.SmsDto;
 import com.java110.entity.center.AppService;
 import com.java110.event.service.api.ServiceDataFlowEvent;
+import com.java110.utils.cache.MappingCache;
 import com.java110.utils.constant.BusinessTypeConstant;
 import com.java110.utils.constant.CommonConstant;
 import com.java110.utils.constant.ResponseConstant;
@@ -43,6 +47,9 @@ public class ApplyApplicationKeyListener extends AbstractServiceApiListener {
     @Autowired
     private IApplicationKeyBMO applicationKeyBMOImpl;
 
+    @Autowired
+    private ISmsInnerServiceSMO smsInnerServiceSMOImpl;
+
     @Autowired
     private IFileInnerServiceSMO fileInnerServiceSMOImpl;
 
@@ -66,6 +73,15 @@ public class ApplyApplicationKeyListener extends AbstractServiceApiListener {
         Assert.hasKeyAndValue(reqJson, "photos", "必填,未包含身份证信息");
         Assert.hasKeyAndValue(reqJson, "typeFlag", "必填,未包含密码类型");
 
+        SmsDto smsDto = new SmsDto();
+        smsDto.setTel(reqJson.getString("tel"));
+        smsDto.setCode(reqJson.getString("msgCode"));
+        smsDto = smsInnerServiceSMOImpl.validateCode(smsDto);
+
+        if (!smsDto.isSuccess() && "ON".equals(MappingCache.getValue(SendSmsFactory.SMS_SEND_SWITCH))) {
+            throw new IllegalArgumentException(smsDto.getMsg());
+        }
+
     }
 
     @Override
@@ -83,7 +99,7 @@ public class ApplyApplicationKeyListener extends AbstractServiceApiListener {
         for (int machineIndex = 0; machineIndex < machineIds.size(); machineIndex++) {
             //添加单元信息
             reqJson.put("machineId", machineIds.getJSONObject(machineIndex).getString("machineId"));
-            reqJson.put("applicationKeyId", GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_applicationKeyId));
+            //reqJson.put("applicationKeyId", GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_applicationKeyId));
             businesses.add(applicationKeyBMOImpl.addApplicationKey(reqJson, context));
             if (reqJson.containsKey("photos")) {
                 JSONArray photos = reqJson.getJSONArray("photos");

+ 2 - 1
Api/src/main/java/com/java110/api/listener/owner/AppUserBindingOwnerListener.java

@@ -6,6 +6,7 @@ import com.java110.api.bmo.owner.IOwnerBMO;
 import com.java110.api.listener.AbstractServiceApiListener;
 import com.java110.core.annotation.Java110Listener;
 import com.java110.core.context.DataFlowContext;
+import com.java110.core.factory.SendSmsFactory;
 import com.java110.core.smo.common.ISmsInnerServiceSMO;
 import com.java110.core.smo.community.ICommunityInnerServiceSMO;
 import com.java110.core.smo.file.IFileInnerServiceSMO;
@@ -99,7 +100,7 @@ public class AppUserBindingOwnerListener extends AbstractServiceApiListener {
         smsDto.setCode(reqJson.getString("msgCode"));
         smsDto = smsInnerServiceSMOImpl.validateCode(smsDto);
 
-        if (!smsDto.isSuccess() && "ON".equals(MappingCache.getValue("APP_USER_BINDING_OWNER_SMS"))) {
+        if (!smsDto.isSuccess() && "ON".equals(MappingCache.getValue(SendSmsFactory.SMS_SEND_SWITCH))) {
             throw new IllegalArgumentException(smsDto.getMsg());
         }
     }

+ 2 - 1
Api/src/main/java/com/java110/api/listener/owner/OwnerRegisterListener.java

@@ -8,6 +8,7 @@ import com.java110.api.listener.AbstractServiceApiListener;
 import com.java110.core.annotation.Java110Listener;
 import com.java110.core.context.DataFlowContext;
 import com.java110.core.factory.GenerateCodeFactory;
+import com.java110.core.factory.SendSmsFactory;
 import com.java110.core.smo.common.ISmsInnerServiceSMO;
 import com.java110.core.smo.community.ICommunityInnerServiceSMO;
 import com.java110.core.smo.file.IFileInnerServiceSMO;
@@ -105,7 +106,7 @@ public class OwnerRegisterListener extends AbstractServiceApiListener {
         smsDto.setCode(reqJson.getString("msgCode"));
         smsDto = smsInnerServiceSMOImpl.validateCode(smsDto);
 
-        if (!smsDto.isSuccess() && "ON".equals(MappingCache.getValue("APP_USER_BINDING_OWNER_SMS"))) {
+        if (!smsDto.isSuccess() && "ON".equals(MappingCache.getValue(SendSmsFactory.SMS_SEND_SWITCH))) {
             throw new IllegalArgumentException(smsDto.getMsg());
         }
     }

+ 2 - 1
Api/src/main/java/com/java110/api/listener/owner/SaveOwnerListener.java

@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.java110.api.bmo.owner.IOwnerBMO;
 import com.java110.api.listener.AbstractServiceApiDataFlowListener;
+import com.java110.core.factory.SendSmsFactory;
 import com.java110.core.smo.common.ISmsInnerServiceSMO;
 import com.java110.core.smo.fee.IFeeConfigInnerServiceSMO;
 import com.java110.core.smo.file.IFileInnerServiceSMO;
@@ -187,7 +188,7 @@ public class SaveOwnerListener extends AbstractServiceApiDataFlowListener {
             smsDto.setCode(paramObj.getString("msgCode"));
             smsDto = smsInnerServiceSMOImpl.validateCode(smsDto);
 
-            if (!smsDto.isSuccess() && "ON".equals(MappingCache.getValue("APP_USER_BINDING_OWNER_SMS"))) {
+            if (!smsDto.isSuccess() && "ON".equals(MappingCache.getValue(SendSmsFactory.SMS_SEND_SWITCH))) {
                 throw new IllegalArgumentException(smsDto.getMsg());
             }
         }

+ 1 - 1
Api/src/main/java/com/java110/api/listener/user/UserSendSmsListener.java

@@ -97,7 +97,7 @@ public class UserSendSmsListener extends AbstractServiceApiListener {
         SmsDto smsDto = new SmsDto();
         smsDto.setTel(tel);
         smsDto.setCode(msgCode);
-        if ("ON".equals(MappingCache.getValue("APP_USER_BINDING_OWNER_SMS"))) {
+        if ("ON".equals(MappingCache.getValue(SendSmsFactory.SMS_SEND_SWITCH))) {
             smsDto = smsInnerServiceSMOImpl.send(smsDto);
         } else {
             smsDto.setSuccess(true);

+ 6 - 2
FrontService/src/main/java/com/java110/front/smo/impl/RegisterServiceSMOImpl.java

@@ -1,6 +1,8 @@
 package com.java110.front.smo.impl;
 
 import com.alibaba.fastjson.JSONObject;
+import com.java110.core.factory.SendSmsFactory;
+import com.java110.core.factory.TencentSendMessageFactory;
 import com.java110.utils.cache.CommonCache;
 import com.java110.utils.cache.MappingCache;
 import com.java110.utils.constant.ServiceConstant;
@@ -119,9 +121,11 @@ public class RegisterServiceSMOImpl extends BaseComponentSMO implements IRegiste
         ResponseEntity<String> sendMessageResult = null;
         String verifyStr = "演示环境验证码:" + verifyCode;
         try {
-            if ("ON".equals(MappingCache.getValue("SMS_SEND_SWITCH"))) {
+            if ("ON".equals(MappingCache.getValue(SendSmsFactory.SMS_SEND_SWITCH))) {
                 //开始发送验证码
-                AliSendMessageFactory.sendMessage(telInfo.getString("tel"), verifyCode);
+                //AliSendMessageFactory.sendMessage(telInfo.getString("tel"), verifyCode);
+
+                TencentSendMessageFactory.sendMessage(telInfo.getString("tel"), verifyCode);
 
                 verifyStr = "验证码已下发至您的手机!";
             }

+ 5 - 0
java110-core/src/main/java/com/java110/core/factory/SendSmsFactory.java

@@ -20,6 +20,11 @@ public class SendSmsFactory {
     private static final String SMS_COMPANY_TENCENT = "TENCENT";
     public static final String VALIDATE_CODE = "_validateTel";
 
+    /**
+     * 短信开关
+     */
+    public static final String SMS_SEND_SWITCH = "SMS_SEND_SWITCH";
+
     public static void sendSms(String tel, String code) {
 
         String smsCompany = MappingCache.getValue(SMS_DOMAIN, SMS_COMPANY);