From 50fdb627e78c111cfdc50adbf6b9e7bbffbeb6ac Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期三, 24 八月 2022 19:08:29 +0800
Subject: [PATCH] 优化代码

---
 service-common/src/main/java/com/java110/common/cmd/machineTranslate/MachineUploadCarLogCmd.java |   38 +++++++++++++++++++++++++++++++-------
 1 files changed, 31 insertions(+), 7 deletions(-)

diff --git a/service-common/src/main/java/com/java110/common/cmd/machineTranslate/MachineUploadCarLogCmd.java b/service-common/src/main/java/com/java110/common/cmd/machineTranslate/MachineUploadCarLogCmd.java
index beb938d..610bcc4 100644
--- a/service-common/src/main/java/com/java110/common/cmd/machineTranslate/MachineUploadCarLogCmd.java
+++ b/service-common/src/main/java/com/java110/common/cmd/machineTranslate/MachineUploadCarLogCmd.java
@@ -4,7 +4,7 @@
 import com.java110.core.annotation.Java110Cmd;
 import com.java110.core.annotation.Java110Transactional;
 import com.java110.core.context.ICmdDataFlowContext;
-import com.java110.core.event.cmd.AbstractServiceCmdListener;
+import com.java110.core.event.cmd.Cmd;
 import com.java110.core.event.cmd.CmdEvent;
 import com.java110.core.factory.GenerateCodeFactory;
 import com.java110.dto.CommunityMemberDto;
@@ -16,12 +16,14 @@
 import com.java110.dto.machine.MachineDto;
 import com.java110.dto.owner.OwnerCarDto;
 import com.java110.dto.owner.OwnerDto;
+import com.java110.dto.parkingBoxArea.ParkingBoxAreaDto;
 import com.java110.dto.tempCarFeeConfig.TempCarFeeConfigDto;
 import com.java110.intf.common.ICarInoutDetailV1InnerServiceSMO;
 import com.java110.intf.common.ICarInoutPaymentV1InnerServiceSMO;
 import com.java110.intf.common.ICarInoutV1InnerServiceSMO;
 import com.java110.intf.common.IMachineInnerServiceSMO;
 import com.java110.intf.community.ICommunityInnerServiceSMO;
+import com.java110.intf.community.IParkingBoxAreaV1InnerServiceSMO;
 import com.java110.intf.fee.IFeeAttrInnerServiceSMO;
 import com.java110.intf.fee.IFeeDetailInnerServiceSMO;
 import com.java110.intf.fee.IFeeInnerServiceSMO;
@@ -56,7 +58,7 @@
  * // modify by 寮犱笁 at 2021-09-12 绗�10琛屽湪鏌愮鍦烘櫙涓嬪瓨鍦ㄦ煇绉峛ug 闇�瑕佷慨澶嶏紝娉ㄩ噴10鑷�20琛� 鍔犲叆 20琛岃嚦30琛�
  */
 @Java110Cmd(serviceCode = "machineTranslate.machineUploadCarLog")
-public class MachineUploadCarLogCmd extends AbstractServiceCmdListener {
+public class MachineUploadCarLogCmd extends Cmd {
 
     public static final int CAR_TYPE_MONTH = 0; //鏈堢杞�
     public static final int CAR_TYPE_SUB = 1; //鎴愬憳杞﹁締
@@ -104,6 +106,9 @@
     @Autowired
     private IFeeDetailInnerServiceSMO feeDetailInnerServiceSMOImpl;
 
+    @Autowired
+    private IParkingBoxAreaV1InnerServiceSMO parkingBoxAreaV1InnerServiceSMOImpl;
+
     @Override
     public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) {
         Assert.hasKeyAndValue(reqJson, "machineCode", "蹇呭~锛岃濉啓璁惧缂栫爜");
@@ -123,7 +128,6 @@
         MachineDto machineDto = new MachineDto();
         machineDto.setMachineCode(reqJson.getString("machineCode"));
         machineDto.setCommunityId(reqJson.getString("communityId"));
-        machineDto.setMachineTypeCd(MachineDto.MACHINE_TYPE_CAR);
         List<MachineDto> machineDtos = machineInnerServiceSMOImpl.queryMachines(machineDto);
 
         Assert.listOnlyOne(machineDtos, "璁惧涓嶅瓨鍦�");
@@ -180,6 +184,7 @@
             carInoutDtos = carInoutV1InnerServiceSMOImpl.queryCarInouts(carInoutDto);
         }
 
+
         //淇濆瓨鍑哄満鏄庣粏
         CarInoutDetailPo carInoutDetailPo = new CarInoutDetailPo();
         carInoutDetailPo.setCarInout(CarInoutDetailDto.CAR_INOUT_OUT);
@@ -189,7 +194,7 @@
         carInoutDetailPo.setInoutId(carInoutDtos.get(0).getInoutId());
         carInoutDetailPo.setMachineCode(machineDto.getMachineCode());
         carInoutDetailPo.setMachineId(machineDto.getMachineId());
-        carInoutDetailPo.setPaId(machineDto.getLocationObjId());
+        carInoutDetailPo.setPaId(carInoutDtos.get(0).getPaId());
         int flag = carInoutDetailV1InnerServiceSMOImpl.saveCarInoutDetail(carInoutDetailPo);
 
         if (flag < 1) {
@@ -309,14 +314,32 @@
      * @param tempCar
      */
     private void carIn(JSONObject reqJson, MachineDto machineDto, int tempCar) {
+        String state = CarInoutDto.STATE_IN;
+        //杩涘満澶辫触璁板綍
+        if(reqJson.containsKey("state") && "5".equals(reqJson.getString("state"))){
+            state = CarInoutDto.STATE_IN_FAIL;
+        }
+
+        String paId = machineDto.getLocationObjId();
+
+        if(MachineDto.MACHINE_TYPE_CAR.equals(machineDto.getMachineTypeCd())){
+            ParkingBoxAreaDto parkingBoxAreaDto = new ParkingBoxAreaDto();
+            parkingBoxAreaDto.setBoxId(machineDto.getLocationObjId());
+            List<ParkingBoxAreaDto> parkingBoxAreaDtos = parkingBoxAreaV1InnerServiceSMOImpl.queryParkingBoxAreas(parkingBoxAreaDto);
+            if(parkingBoxAreaDtos == null || parkingBoxAreaDtos.size() < 1){
+                throw new CmdException("宀椾涵鏈厤缃仠杞﹀満"+machineDto.getLocationObjId());
+            }
+            paId = parkingBoxAreaDtos.get(0).getPaId();
+        }
+
         //淇濆瓨
         CarInoutPo carInoutPo = new CarInoutPo();
         carInoutPo.setCarNum(reqJson.getString("carNum"));
         carInoutPo.setCommunityId(reqJson.getString("communityId"));
         carInoutPo.setInoutId(GenerateCodeFactory.getGeneratorId(CODE_PREFIX_ID));
         carInoutPo.setInTime(reqJson.getString("inTime"));
-        carInoutPo.setState(CarInoutDto.STATE_IN);
-        carInoutPo.setPaId(machineDto.getLocationObjId());
+        carInoutPo.setState(state);
+        carInoutPo.setPaId(paId);
         int flag = carInoutV1InnerServiceSMOImpl.saveCarInout(carInoutPo);
 
         if (flag < 1) {
@@ -333,7 +356,8 @@
         carInoutDetailPo.setInoutId(carInoutPo.getInoutId());
         carInoutDetailPo.setMachineCode(machineDto.getMachineCode());
         carInoutDetailPo.setMachineId(machineDto.getMachineId());
-        carInoutDetailPo.setPaId(machineDto.getLocationObjId());
+        carInoutDetailPo.setPaId(paId);
+        carInoutDetailPo.setRemark(reqJson.getString("remark"));
         flag = carInoutDetailV1InnerServiceSMOImpl.saveCarInoutDetail(carInoutDetailPo);
 
         if (flag < 1) {

--
Gitblit v1.8.0