dangsn
2024-12-10 0e967c072099b9959264c8cc324091c1d0472251
Source/plt-web/plt-web-parent/plt-web-permission/src/main/java/com/vci/web/util/WebUtil.java
@@ -624,7 +624,7 @@
         }
      }
      //如果版本本次序号的属性,需要从属性的映射中,获取业务类型中的字段名称
      clientBoAttrName = VciQueryWrapperForDO.BASE_MODEL_COMPATIBILITY_MAP.getOrDefault(clientBoAttrName.toLowerCase(Locale.ROOT),clientBoAttrName);
      clientBoAttrName = VciQueryWrapperForDO.BASEMODEL_CBO_FIELD_MAP.getOrDefault(clientBoAttrName.toLowerCase(Locale.ROOT),clientBoAttrName);
      return clientBoAttrName;
    }
    
@@ -750,12 +750,12 @@
     * @return 方法
     */
    public static Method getSetmethod(Class c,String fieldName){
       if(c!=null&&isNotNull(fieldName)){
       if(c != null && isNotNull(fieldName)){
          try {
             PropertyDescriptor pd = new PropertyDescriptor(fieldName, c);
            return pd.getWriteMethod();
         } catch (SecurityException e) {
         } catch (IntrospectionException e) {
         } catch (Exception e) {
            //TODO 不做处理
         }
       }
       return null;
@@ -815,6 +815,7 @@
     * @param value 属性值
     */
    public static void setValueForFieldFromCbo(String fieldName,Object obj,String value){
      System.out.println("fieldName:"+fieldName+",value:"+value);
      try{
         Field field = getFieldForObject(fieldName,obj);
         if(field != null){
@@ -1164,38 +1165,18 @@
         List<Field> boFields = getAllFieldForObj(bo.getClass());
         if(!CollectionUtils.isEmpty(boFields)){
            for(Field field : boFields){
               //说明这个就是在BO对象上的
               Object value = getValueFromField(field.getName(), bo);
               if(value != null){
                  //BusinessObject和BaseModel中,以下的属性,不相同,需要单独处理
                  switch (field.getName().toLowerCase()){
                     case "revoid":
                        setValueForFieldFromCbo("revisionOid", obj, getStringValueFromObject(value));
                        break;
                     case "btname":
                        setValueForFieldFromCbo("btmName", obj, getStringValueFromObject(value));
                        break;
                     case "islastr":
                        setValueForFieldFromCbo("lastr", obj, getStringValueFromObject(value).equalsIgnoreCase("true")?"1":"0");
                        break;
                     case "isfirstr":
                        setValueForFieldFromCbo("firstr", obj, getStringValueFromObject(value).equalsIgnoreCase("true")?"1":"0");
                        break;
                     case "islastv":
                        setValueForFieldFromCbo("lastv", obj, getStringValueFromObject(value).equalsIgnoreCase("true")?"1":"0");
                        break;
                     case "isfirstv":
                        setValueForFieldFromCbo("firstv", obj, getStringValueFromObject(value).equalsIgnoreCase("true")?"1":"0");
                        break;
                     case "modifytime":
                        setValueForFieldFromCbo("lastmodifytime", obj, getStringValueFromObject(value));
                        break;
                     case "fromversion":
                        setValueForFieldFromCbo("copyFromVersion", obj, getStringValueFromObject(value));
                        break;
                     default:
                        setValueForFieldFromCbo(fieldAttrMap.get(field.getName().toLowerCase()), obj, getStringValueFromObject(value));
                        break;
               if(VciQueryWrapperForDO.BASEMODEL_CBO_FIELD_MAP.containsValue(field.getName().toLowerCase())){
                  //说明这个就是在BO对象上的
                  Object value = getValueFromField(field.getName(), bo);
                  if(value != null){
                     //BusinessObject和BaseModel中,是否第一版本版次的属性,需要单独处理
                     String fieldValue;
                     if(VciQueryWrapperForDO.BASE_MODEL_COMPATIBILITY_MAP.containsValue(field.getName().toLowerCase())){
                        fieldValue = getStringValueFromObject(value).equalsIgnoreCase("true")?"1":"0";
                     }else{
                        fieldValue = getStringValueFromObject(value);
                     }
                     setValueForFieldFromCbo(fieldAttrMap.get(field.getName().toLowerCase()), obj, fieldValue);
                  }
               }
            }
@@ -1579,8 +1560,7 @@
    * @return true为默认
    */
   public static boolean isDefaultField(String fieldNames){
      if(VciQueryWrapperForDO.BASIC_FIELD_MAP.containsKey(fieldNames) || VciQueryWrapperForDO.LIFECYCLE_MANAGE_FIELD_MAP.containsKey(fieldNames)
      || VciQueryWrapperForDO.REVISION_MANAGE_FIELD_MAP.containsKey(fieldNames) || VciQueryWrapperForDO.BASE_MODEL_COMPATIBILITY_MAP.containsValue(fieldNames)) {
      if(VciQueryWrapperForDO.BASEMODEL_CBO_FIELD_MAP.containsKey(fieldNames)) {
          return true;
       }
       return false;