Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeMdmInfaceImpl.java
@@ -56,6 +56,8 @@
import javax.servlet.http.HttpServletRequest;
import javax.xml.ws.WebServiceContext;
import javax.xml.ws.handler.MessageContext;
import java.sql.Timestamp;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.concurrent.CopyOnWriteArrayList;
import java.util.concurrent.ForkJoinPool;
@@ -175,7 +177,7 @@
      List<ResultMdMapping> resultMdMappingList=new ArrayList<>();
      String message="";
      AtomicBoolean success = new AtomicBoolean(true);
      List<Map<String,String>> masterDataList = new ArrayList<>();
      List<Map<String,Object>> masterDataList = new ArrayList<>();
      AtomicReference<ClassifyConfig> currentClassifyConfig = new AtomicReference<>(new ClassifyConfig());
      try {
         if (mdmParamData == null) {
@@ -215,12 +217,14 @@
            });
            masterDataList.stream().forEach(masterData -> {
                  masterData.forEach((field, vaule) -> {
                     String newValue="";
                     if (fieldClassifyConfigMap.containsKey(field)) {
                        vaule=StringUtils.isBlank(vaule) ? "" : vaule;
                        //vaule=StringUtils.isBlank(vaule) ? "" : vaule;
                        newValue=objectToStr(vaule);
                        List<ClassifyConfig> classifyConfigs = fieldClassifyConfigMap.get(field);
                        Map<String, ClassifyConfig> classifyConfigMap = classifyConfigs.stream().filter(classify -> classify != null && StringUtils.isNotBlank(classify.getSourceClassifyCode())).collect(Collectors.toList()).stream().collect(Collectors.toMap(s -> s.getSourceClassifyCode(), t -> t));
                        if (classifyConfigMap.containsKey(vaule)) {
                           currentClassifyConfig.set(classifyConfigMap.get(vaule));
                        if (classifyConfigMap.containsKey(newValue)) {
                           currentClassifyConfig.set(classifyConfigMap.get(newValue));
                        }
                     }
                  });
@@ -284,8 +288,9 @@
               /***
                * 根据配置文件获取枚举值
                */
               String newValue=objectToStr(vaule);
               if(fields.contains(field)){//如果是枚举,则需要转换枚举值
                  String enumFiled = masterData.get(field);
                  String enumFiled = newValue;
                  EnumerableData enumerableData = JSONObject.toJavaObject(JSONObject.parseObject(enumFiled), EnumerableData.class);
                  String enumCode = enumerableData.getCode();
                  //String enumCodeValue=enumerableData.getName();
@@ -296,7 +301,7 @@
               }else {
                  ProppertyVO proppertyVO = new ProppertyVO();
                  proppertyVO.setKey(field);
                  proppertyVO.setValue(vaule);
                  proppertyVO.setValue(newValue);
                  proppertyVOList.add(proppertyVO);
               }
@@ -824,4 +829,58 @@
      dockingLogeService.save(dockingLoge);
      log.info("集成推送数据,systemId:"+systemId+",systemname:"+systemName+",operation:"+operation+",param:"+parmaData);
   }
   /***
    * 属性类型转换
    * @param vaule
    * @return
    */
   private String objectToStr(Object vaule){
      String newValue="";
      if(vaule ==null||"".equals(vaule)||vaule==""){
         return "";
      }
      if(vaule instanceof Integer){
         Integer intValue=(Integer)vaule;
         newValue=String.valueOf(intValue);
      }else if (vaule instanceof Boolean){
         boolean boolValue=(Boolean) vaule;
         newValue=Boolean.toString(boolValue);
      }else if(vaule instanceof Timestamp){
         Timestamp timestampValue=(Timestamp)vaule;
         newValue=timestamp2Str(timestampValue);
      }else if(vaule instanceof Date){
         Date dataValue=(Date) vaule;
         newValue = date2Str(dataValue,"yyyy-MM-dd HH:mm:ss");
      }else {
         return vaule.toString();
      }
      return newValue;
   }
   private String date2Str(Date date, String format) {
      if (null == date) {
         return null;
      } else {
         if (format == null || format.trim().length() == 0) {
            format = "yyyy-MM-dd HH:mm:ss.SSS";
         }
         SimpleDateFormat sdf = new SimpleDateFormat(format);
         return sdf.format(date);
      }
   }
   private  String timestamp2Str(Timestamp time) {
      Date date = null;
      if (null == time) {
         return null;
      } else {
         if (null != time) {
            date = new Date(time.getTime());
         }
         return date2Str(date, "yyyy-MM-dd HH:mm:ss.SSS");
      }
   }
}