Kaynağa Gözat

提交驾驶证识别加字典转换营运、非营运 转为营业、非营业返回前台

hxl13994548489 2 yıl önce
ebeveyn
işleme
1217767b54

+ 40 - 6
src/main/java/com/ydtech/modules/order/service/impl/IdentifyServiceImpl.java

@@ -1,5 +1,8 @@
 package com.ydtech.modules.order.service.impl;
 
+import com.ydtech.config.DictEnumConfig;
+import com.ydtech.constants.enums.dict.DictionaryData;
+import com.ydtech.constants.enums.dict.DictionaryManagement;
 import com.ydtech.core.page.HttpResult;
 import com.ydtech.exception.SystemException;
 import com.ydtech.modules.ins.model.CardUserInfo;
@@ -22,10 +25,7 @@ import org.springframework.web.multipart.MultipartFile;
 
 import javax.annotation.Resource;
 import java.io.IOException;
-import java.util.Base64;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Objects;
+import java.util.*;
 import java.util.concurrent.TimeUnit;
 
 import static com.ydtech.modules.order.constants.OrderCacheConstant.IMAGE_IDENTIFY_KEY;
@@ -99,7 +99,6 @@ public class IdentifyServiceImpl implements IdentifyService {
                 CardUserInfo cardUserInfo1 = new CardUserInfo();
                 BeanUtils.copyProperties(Objects.requireNonNull(redisTemplate.opsForValue().get(s1Key)), cardUserInfo1);
                 MultiObjectDetect.conversionFront(cardUserInfo, cardUserInfo1);
-
             } else {
                 //行驶证正面识别
                 MultiObjectDetect.drivingPermitFront(s1, cardUserInfo);
@@ -126,9 +125,44 @@ public class IdentifyServiceImpl implements IdentifyService {
         }
 
         AssertionUtils.isEmpty(cardUserInfo, "行驶证正面识别失败");
-        map.put("carInfo", cardUserInfo);
+        //add by hxl   处理营运和非营运
+        cardUserInfo = convertUseNatureCode(cardUserInfo);
+        map.put("carInfo",cardUserInfo);
         return HttpResult.ok("success", map);
     }
+    /**
+    * @Description  将车辆的性质做字典转换
+    * @Author  hxl
+    * @Date   2024/4/10 11:07
+    * @Param
+    * @Return
+    * @Exception
+    *
+    */
+    private CardUserInfo  convertUseNatureCode(CardUserInfo cardUserInfo) {
+        String useNature = cardUserInfo.getUseNature();
+        if(useNature!=null && !"".equals(useNature)){
+            if("营运".equals(useNature)){
+                useNature="营业";
+            }else if("非营运".equals(useNature)){
+                useNature="非营业";
+            }else{
+                useNature="";
+            }
+        }
+        Map<String, String> enumMap= new HashMap<>();
+        Map<String, DictionaryManagement> m = DictEnumConfig.getDmMap();
+        DictionaryManagement natureOfVehicleUse = m.get("natureOfVehicleUse");
+        List<DictionaryData> ddList = natureOfVehicleUse.getDdList();
+        if(ddList!=null && ddList.size()>0){
+            for (DictionaryData dictionaryData : ddList) {
+                enumMap.put(dictionaryData.getDictTag(),dictionaryData.getDictValue());
+            }
+        }
+        String useNaturekey = enumMap.get(useNature);
+        cardUserInfo.setUseNature(useNaturekey);
+        return cardUserInfo;
+    }
 
 
     @Override