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

+ 27 - 0
java110-bean/src/main/java/com/java110/dto/machine/MachineRecordDto.java

@@ -27,6 +27,9 @@ public class MachineRecordDto extends PageDto implements Serializable {
     private String communityId;
     private String fileId;
     private String recordTypeCd;
+    private String userId;
+    private String similar;
+    private String photo;
 
 
     private Date createTime;
@@ -146,4 +149,28 @@ public class MachineRecordDto extends PageDto implements Serializable {
     public void setOpenTypeName(String openTypeName) {
         this.openTypeName = openTypeName;
     }
+
+    public String getUserId() {
+        return userId;
+    }
+
+    public void setUserId(String userId) {
+        this.userId = userId;
+    }
+
+    public String getSimilar() {
+        return similar;
+    }
+
+    public void setSimilar(String similar) {
+        this.similar = similar;
+    }
+
+    public String getPhoto() {
+        return photo;
+    }
+
+    public void setPhoto(String photo) {
+        this.photo = photo;
+    }
 }

+ 31 - 0
service-common/src/main/java/com/java110/common/api/MachineApi.java

@@ -2,9 +2,12 @@ package com.java110.common.api;
 
 import com.alibaba.fastjson.JSONObject;
 import com.java110.common.bmo.machine.IMachineOpenDoorBMO;
+import com.java110.common.bmo.machineRecord.ISaveMachineRecordBMO;
 import com.java110.common.bmo.machineTranslateError.IGetMachineTranslateErrorBMO;
+import com.java110.dto.machine.MachineRecordDto;
 import com.java110.dto.machineTranslateError.MachineTranslateErrorDto;
 import com.java110.utils.util.Assert;
+import com.java110.utils.util.BeanConvertUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.ResponseEntity;
 import org.springframework.web.bind.annotation.*;
@@ -20,6 +23,9 @@ public class MachineApi {
     @Autowired
     private IGetMachineTranslateErrorBMO getMachineTranslateErrorBMOImpl;
 
+    @Autowired
+    private ISaveMachineRecordBMO saveMachineRecordBMOImpl;
+
     /**
      * 设备开门功能
      *
@@ -85,4 +91,29 @@ public class MachineApi {
         return getMachineTranslateErrorBMOImpl.get(machineTranslateErrorDto);
     }
 
+    /**
+     * 重新送物联网系统
+     *
+     * @param reqJson
+     * @return
+     * @serviceCode /machine/openDoorLog
+     * @path /app/machine/openDoorLog
+     */
+    @RequestMapping(value = "/openDoorLog", method = RequestMethod.POST)
+    public ResponseEntity<String> openDoorLog(@RequestBody JSONObject reqJson) {
+        Assert.hasKeyAndValue(reqJson, "userId", "未包含用户信息");
+        Assert.hasKeyAndValue(reqJson, "userName", "未包含用户名称");
+        Assert.hasKeyAndValue(reqJson, "machineCode", "未包含设备编码");
+        Assert.hasKeyAndValue(reqJson, "openTypeCd", "未包含开门方式");
+        Assert.hasKeyAndValue(reqJson, "similar", "未包含开门相似度");
+        Assert.hasKeyAndValue(reqJson, "photo", "未包含抓拍照片");
+        Assert.hasKeyAndValue(reqJson, "dateTime", "未包含开门时间");
+        Assert.hasKeyAndValue(reqJson, "extCommunityId", "未包含小区信息");
+        Assert.hasKeyAndValue(reqJson, "recordTypeCd", "未包含记录类型");
+        MachineRecordDto machineRecordDto = BeanConvertUtil.covertBean(reqJson, MachineRecordDto.class);
+        machineRecordDto.setCommunityId(reqJson.getString("extCommunityId"));
+        machineRecordDto.setName(reqJson.getString("userName"));
+        return saveMachineRecordBMOImpl.saveRecord(machineRecordDto);
+    }
+
 }

+ 38 - 0
service-common/src/main/java/com/java110/common/bmo/machineRecord/ISaveMachineRecordBMO.java

@@ -0,0 +1,38 @@
+/*
+ * Copyright 2017-2020 吴学文 and java110 team.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.java110.common.bmo.machineRecord;
+
+import com.java110.dto.machine.MachineRecordDto;
+import com.java110.po.machine.MachineRecordPo;
+import org.springframework.http.ResponseEntity;
+
+/**
+ * 开门记录 存储
+ * <p>
+ * add by wuxw 2020-12-27
+ * <p>
+ * 协议:https://gitee.com/java110/MicroCommunityThings/blob/master/back/docs/api.md
+ */
+public interface ISaveMachineRecordBMO {
+
+    /**
+     * 保存开门记录
+     *
+     * @param machineRecordDto
+     * @return
+     */
+    ResponseEntity<String> saveRecord(MachineRecordDto machineRecordDto);
+}

+ 72 - 0
service-common/src/main/java/com/java110/common/bmo/machineRecord/impl/SaveMachineRecordBMOImpl.java

@@ -0,0 +1,72 @@
+/*
+ * Copyright 2017-2020 吴学文 and java110 team.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.java110.common.bmo.machineRecord.impl;
+
+import com.google.protobuf.GeneratedMessage;
+import com.java110.common.bmo.machineRecord.ISaveMachineRecordBMO;
+import com.java110.core.factory.GenerateCodeFactory;
+import com.java110.dto.file.FileDto;
+import com.java110.dto.machine.MachineRecordDto;
+import com.java110.intf.common.IFileInnerServiceSMO;
+import com.java110.po.file.FileRelPo;
+import com.java110.po.machine.MachineRecordPo;
+import com.java110.utils.util.BeanConvertUtil;
+import com.java110.utils.util.StringUtil;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.ResponseEntity;
+import org.springframework.stereotype.Service;
+
+/**
+ * 保存 开门记录
+ *
+ * @desc add by 吴学文 17:37
+ */
+@Service
+public class SaveMachineRecordBMOImpl implements ISaveMachineRecordBMO {
+
+    @Autowired
+    private IFileInnerServiceSMO fileInnerServiceSMOImpl;
+    @Override
+    public ResponseEntity<String> saveRecord(MachineRecordDto machineRecordDto) {
+
+        if (StringUtil.isEmpty(machineRecordDto.getPhoto())) {
+            FileDto fileDto = new FileDto();
+            fileDto.setFileId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_file_id));
+            fileDto.setFileName(fileDto.getFileId());
+            fileDto.setContext(machineRecordDto.getPhoto());
+            fileDto.setSuffix("jpeg");
+            fileDto.setCommunityId(machineRecordDto.getCommunityId());
+            String fileName = fileInnerServiceSMOImpl.saveFile(fileDto);
+
+            FileRelPo fileRelPo = new FileRelPo();
+            fileRelPo.setFileRelId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_fileRelId));
+            fileRelPo.setRelTypeCd("60000");
+            fileRelPo.setSaveWay("table");
+//            fileRelPo.set
+//            businessUnit.put("saveWay", "table");
+//            businessUnit.put("objId", paramInJson.getString("machineRecordId"));
+//            businessUnit.put("fileRealName", paramInJson.getString("photoId"));
+//            businessUnit.put("fileSaveName", paramInJson.getString("fileSaveName"));
+//             BeanConvertUtil.covertBean(businessUnit, MachineRecordPo.class);
+//            reqJson.put("photoId", fileDto.getFileId());
+//            reqJson.put("fileSaveName", fileName);
+//
+//            machineRecordBMOImpl.addPhoto(reqJson, context);
+
+        }
+        return null;
+    }
+}