Преглед на файлове

优化 车辆同步接口

java110 преди 5 години
родител
ревизия
dad130266a

+ 131 - 0
java110-bean/src/main/java/com/java110/dto/machine/CarResultDto.java

@@ -0,0 +1,131 @@
+package com.java110.dto.machine;
+
+/**
+ * @ClassName MachineUserResultDto
+ * @Description TODO
+ * @Author wuxw
+ * @Date 2020/6/5 8:33
+ * @Version 1.0
+ * add by wuxw 2020/6/5
+ **/
+public class CarResultDto {
+
+    private String communityId;
+
+    private String communityName;
+
+    private String carId;
+
+    private String carNum;
+
+    private String carBrand;
+
+    private String carType;
+    private String carColor;
+
+    private String name;
+
+    private String startTime;
+
+    private String endTime;
+
+    private String remarks;
+
+    private String phone;
+
+    public String getCarId() {
+        return carId;
+    }
+
+    public void setCarId(String carId) {
+        this.carId = carId;
+    }
+
+    public String getCarNum() {
+        return carNum;
+    }
+
+    public void setCarNum(String carNum) {
+        this.carNum = carNum;
+    }
+
+    public String getCarBrand() {
+        return carBrand;
+    }
+
+    public void setCarBrand(String carBrand) {
+        this.carBrand = carBrand;
+    }
+
+    public String getCarType() {
+        return carType;
+    }
+
+    public void setCarType(String carType) {
+        this.carType = carType;
+    }
+
+    public String getCarColor() {
+        return carColor;
+    }
+
+    public void setCarColor(String carColor) {
+        this.carColor = carColor;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public String getStartTime() {
+        return startTime;
+    }
+
+    public void setStartTime(String startTime) {
+        this.startTime = startTime;
+    }
+
+    public String getEndTime() {
+        return endTime;
+    }
+
+    public void setEndTime(String endTime) {
+        this.endTime = endTime;
+    }
+
+    public String getRemarks() {
+        return remarks;
+    }
+
+    public void setRemarks(String remarks) {
+        this.remarks = remarks;
+    }
+
+    public String getCommunityId() {
+        return communityId;
+    }
+
+    public void setCommunityId(String communityId) {
+        this.communityId = communityId;
+    }
+
+    public String getCommunityName() {
+        return communityName;
+    }
+
+    public void setCommunityName(String communityName) {
+        this.communityName = communityName;
+    }
+
+    public String getPhone() {
+        return phone;
+    }
+
+    public void setPhone(String phone) {
+        this.phone = phone;
+    }
+}

+ 2 - 1
service-api/src/main/java/com/java110/api/bmo/machineTranslate/IOwnerCarMachineTranslateBMO.java

@@ -1,6 +1,7 @@
 package com.java110.api.bmo.machineTranslate;
 
 import com.alibaba.fastjson.JSONObject;
+import com.java110.dto.machine.CarResultDto;
 import com.java110.dto.machine.MachineUserResultDto;
 
 /**
@@ -18,5 +19,5 @@ public interface IOwnerCarMachineTranslateBMO {
      *
      * @return
      */
-    MachineUserResultDto getInfo(JSONObject reqJson);
+    CarResultDto getInfo(JSONObject reqJson);
 }

+ 31 - 22
service-api/src/main/java/com/java110/api/bmo/machineTranslate/impl/OwnerCarMachineTranslateBMOImpl.java

@@ -2,18 +2,16 @@ package com.java110.api.bmo.machineTranslate.impl;
 
 import com.alibaba.fastjson.JSONObject;
 import com.java110.api.bmo.machineTranslate.IOwnerCarMachineTranslateBMO;
-import com.java110.api.listener.machineTranslate.MachineQueryUserInfoListener;
+import com.java110.dto.machine.CarResultDto;
 import com.java110.dto.machine.MachineTranslateDto;
-import com.java110.dto.machine.MachineUserResultDto;
 import com.java110.dto.owner.OwnerCarDto;
+import com.java110.dto.owner.OwnerDto;
 import com.java110.intf.common.IFileInnerServiceSMO;
-import com.java110.intf.common.IFileRelInnerServiceSMO;
 import com.java110.intf.common.IMachineTranslateInnerServiceSMO;
 import com.java110.intf.community.ICommunityInnerServiceSMO;
 import com.java110.intf.user.IOwnerCarInnerServiceSMO;
-import com.java110.utils.util.DateUtil;
+import com.java110.intf.user.IOwnerInnerServiceSMO;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.ResponseEntity;
 import org.springframework.stereotype.Service;
 
 import java.util.List;
@@ -33,7 +31,7 @@ public class OwnerCarMachineTranslateBMOImpl implements IOwnerCarMachineTranslat
     private IOwnerCarInnerServiceSMO ownerCarInnerServiceSMOImpl;
 
     @Autowired
-    private IFileRelInnerServiceSMO fileRelInnerServiceSMOImpl;
+    private IOwnerInnerServiceSMO ownerInnerServiceSMOImpl;
 
     @Autowired
     private IFileInnerServiceSMO fileInnerServiceSMOImpl;
@@ -45,7 +43,7 @@ public class OwnerCarMachineTranslateBMOImpl implements IOwnerCarMachineTranslat
     private ICommunityInnerServiceSMO communityInnerServiceSMOImpl;
 
     @Override
-    public MachineUserResultDto getInfo(JSONObject reqJson) {
+    public CarResultDto getInfo(JSONObject reqJson) {
 
         String communityId = reqJson.getString("communityId");
         OwnerCarDto ownerCarDto = new OwnerCarDto();
@@ -55,20 +53,31 @@ public class OwnerCarMachineTranslateBMOImpl implements IOwnerCarMachineTranslat
 
 
         ownerCarDto = ownerCarDtos.get(0);
-
-        MachineUserResultDto machineUserResultDto = new MachineUserResultDto();
-        machineUserResultDto.setUserid(ownerCarDto.getCarId());
-        machineUserResultDto.setGroupid(communityId);
-        machineUserResultDto.setGroup(reqJson.getString("communityName"));
-        machineUserResultDto.setName(ownerCarDto.getCarNum());
-        machineUserResultDto.setFaceBase64("");
-        machineUserResultDto.setIdNumber("");
-        machineUserResultDto.setStartTime(ownerCarDto.getStartTime().getTime()+"");
-        machineUserResultDto.setEndTime(ownerCarDto.getEndTime().getTime()+"");
-
-        machineUserResultDto.setRemarks("HC小区管理系统");
-        machineUserResultDto.setReserved(ownerCarDto.getCarId());
-        machineUserResultDto.setUserType(MachineQueryUserInfoListener.TYPE_OWNER_CAR);
+        OwnerDto ownerDto = new OwnerDto();
+        ownerDto.setMemberId(ownerCarDto.getOwnerId());
+        ownerDto.setCommunityId(ownerCarDto.getCommunityId());
+        List<OwnerDto> ownerDtos = ownerInnerServiceSMOImpl.queryOwners(ownerDto);
+        String ownerName = "未知";
+        String phone = "18911111111";
+        if (ownerDtos != null && ownerDtos.size() == 1) {
+            ownerName = ownerDtos.get(0).getName();
+            phone = ownerDtos.get(0).getLink();
+        }
+
+        CarResultDto carResultDto = new CarResultDto();
+        carResultDto.setCarId(ownerCarDto.getCarId());
+        carResultDto.setCommunityId(communityId);
+        carResultDto.setCommunityName(reqJson.getString("communityName"));
+        carResultDto.setCarNum(ownerCarDto.getCarNum());
+        carResultDto.setName(ownerName);
+        carResultDto.setPhone(phone);
+        carResultDto.setCarBrand(ownerCarDto.getCarBrand());
+        carResultDto.setCarColor(ownerCarDto.getCarColor());
+        carResultDto.setStartTime(ownerCarDto.getStartTime().getTime() + "");
+        carResultDto.setEndTime(ownerCarDto.getEndTime().getTime() + "");
+        carResultDto.setCarType(ownerCarDto.getCarType());
+
+        carResultDto.setRemarks("HC小区管理系统道闸同步");
 
         //查询业主是否有欠费
 
@@ -80,6 +89,6 @@ public class OwnerCarMachineTranslateBMOImpl implements IOwnerCarMachineTranslat
         tmpMtDto.setState("20000");
         machineTranslateInnerServiceSMOImpl.updateMachineTranslateState(tmpMtDto);
 
-        return machineUserResultDto;
+        return carResultDto;
     }
 }

+ 18 - 5
service-api/src/main/java/com/java110/api/listener/machineTranslate/MachineQueryUserInfoListener.java

@@ -2,19 +2,24 @@ package com.java110.api.listener.machineTranslate;
 
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
-import com.java110.api.bmo.machineTranslate.*;
+import com.java110.api.bmo.machineTranslate.IApplicationKeyMachineTranslateBMO;
+import com.java110.api.bmo.machineTranslate.IOwnerCarMachineTranslateBMO;
+import com.java110.api.bmo.machineTranslate.IOwnerMachineTranslateBMO;
+import com.java110.api.bmo.machineTranslate.IStaffMachineTranslateBMO;
+import com.java110.api.bmo.machineTranslate.IVisitMachineTranslateBMO;
 import com.java110.core.annotation.Java110Listener;
 import com.java110.core.context.DataFlowContext;
 import com.java110.core.event.service.api.ServiceDataFlowEvent;
+import com.java110.dto.community.CommunityDto;
+import com.java110.dto.machine.CarResultDto;
+import com.java110.dto.machine.MachineTranslateDto;
+import com.java110.dto.machine.MachineUserResultDto;
 import com.java110.intf.common.IApplicationKeyInnerServiceSMO;
 import com.java110.intf.common.IFileInnerServiceSMO;
 import com.java110.intf.common.IFileRelInnerServiceSMO;
 import com.java110.intf.common.IMachineInnerServiceSMO;
 import com.java110.intf.common.IMachineTranslateInnerServiceSMO;
 import com.java110.intf.community.ICommunityInnerServiceSMO;
-import com.java110.dto.community.CommunityDto;
-import com.java110.dto.machine.MachineTranslateDto;
-import com.java110.dto.machine.MachineUserResultDto;
 import com.java110.utils.constant.ServiceCodeMachineTranslateConstant;
 import com.java110.utils.util.Assert;
 import com.java110.vo.ResultVo;
@@ -148,6 +153,7 @@ public class MachineQueryUserInfoListener extends BaseMachineListener {
         reqJson.put("machineCode", httpHeaders.get("machinecode").get(0));
 
         MachineUserResultDto machineUserResultDto = null;
+        CarResultDto carResultDto = null;
         switch (tmpMachineTranslateDto.getTypeCd()) {
             case TYPE_OWNER:
                 machineUserResultDto = ownerMachineTranslateBMOImpl.getPhotoInfo(reqJson);
@@ -162,11 +168,18 @@ public class MachineQueryUserInfoListener extends BaseMachineListener {
                 machineUserResultDto = staffMachineTranslateBMOImpl.getPhotoInfo(reqJson);
                 break;
             case TYPE_OWNER_CAR:
-                machineUserResultDto = ownerCarMachineTranslateBMOImpl.getInfo(reqJson);
+                carResultDto = ownerCarMachineTranslateBMOImpl.getInfo(reqJson);
             default:
                 break;
         }
 
+        if (carResultDto != null) {
+            resultVo = new ResultVo(ResultVo.CODE_MACHINE_OK, ResultVo.MSG_OK, carResultDto);
+            responseEntity = new ResponseEntity<>(JSONObject.toJSONString(resultVo), httpHeaders, HttpStatus.OK);
+            context.setResponseEntity(responseEntity);
+            return;
+        }
+
         //检查是否存在该用户
         if (machineUserResultDto == null) {
             resultVo = new ResultVo(ResultVo.CODE_MACHINE_ERROR, "未找到相应人脸信息");

+ 6 - 5
service-job/src/main/java/com/java110/job/task/car/CarToMachineTemplate.java

@@ -111,9 +111,10 @@ public class CarToMachineTemplate extends TaskSystemQuartz {
 
         for (OwnerCarDto ownerCarDto : ownerCarDtos) {
 
-            if (BusinessTypeConstant.BUSINESS_TYPE_SAVE_OWNER_CAR.equals(tmpOrderDto.getBusinessTypeCd())
-                    || BusinessTypeConstant.BUSINESS_TYPE_UPDATE_OWNER_CAR.equals(tmpOrderDto.getBusinessTypeCd())) {
-                saveMachineTranslate(tmpOrderDto, ownerCarDto);
+            if (BusinessTypeConstant.BUSINESS_TYPE_SAVE_OWNER_CAR.equals(tmpOrderDto.getBusinessTypeCd())) {
+                saveOrUpdateMachineTranslate(tmpOrderDto, ownerCarDto, CREATE_OWNER_CAR);
+            } else if (BusinessTypeConstant.BUSINESS_TYPE_UPDATE_OWNER_CAR.equals(tmpOrderDto.getBusinessTypeCd())) {
+                saveOrUpdateMachineTranslate(tmpOrderDto, ownerCarDto, UPDATE_OWNER_CAR);
             } else if (BusinessTypeConstant.BUSINESS_TYPE_DELETE_OWNER_CAR.equals(tmpOrderDto.getBusinessTypeCd())
             ) {
                 deleteMachineTranslate(tmpOrderDto, ownerCarDto);
@@ -126,7 +127,7 @@ public class CarToMachineTemplate extends TaskSystemQuartz {
 
     }
 
-    private void saveMachineTranslate(OrderDto tmpOrderDto, OwnerCarDto ownerCarDto) {
+    private void saveOrUpdateMachineTranslate(OrderDto tmpOrderDto, OwnerCarDto ownerCarDto, String cmd) {
 
         MachineTranslateDto machineTranslateDto = new MachineTranslateDto();
         machineTranslateDto.setMachineTranslateId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_machineTranslateId));
@@ -138,7 +139,7 @@ public class CarToMachineTemplate extends TaskSystemQuartz {
         machineTranslateDto.setState(STATE_NO_TRANSLATE);
         machineTranslateDto.setCommunityId(ownerCarDto.getCommunityId());
         machineTranslateDto.setbId("-1");
-        machineTranslateDto.setMachineCmd(CREATE_OWNER_CAR);
+        machineTranslateDto.setMachineCmd(cmd);
         machineTranslateDto.setObjBId(tmpOrderDto.getbId());
         machineTranslateInnerServiceSMOImpl.saveMachineTranslate(machineTranslateDto);