From 0e967c072099b9959264c8cc324091c1d0472251 Mon Sep 17 00:00:00 2001
From: dangsn <dangsn@chicecm.com>
Date: 星期二, 10 十二月 2024 10:55:25 +0800
Subject: [PATCH] 调整工具类中给对象赋值的接口
---
Source/plt-web/plt-web-parent/plt-web-base/src/main/java/com/vci/starter/web/wrapper/VciQueryWrapperForDO.java | 33 ++++++++++++++++
Source/plt-web/plt-web-parent/plt-web-permission/src/main/java/com/vci/web/util/WebUtil.java | 56 +++++++++-------------------
2 files changed, 51 insertions(+), 38 deletions(-)
diff --git a/Source/plt-web/plt-web-parent/plt-web-base/src/main/java/com/vci/starter/web/wrapper/VciQueryWrapperForDO.java b/Source/plt-web/plt-web-parent/plt-web-base/src/main/java/com/vci/starter/web/wrapper/VciQueryWrapperForDO.java
index 5f8f765..af95a71 100644
--- a/Source/plt-web/plt-web-parent/plt-web-base/src/main/java/com/vci/starter/web/wrapper/VciQueryWrapperForDO.java
+++ b/Source/plt-web/plt-web-parent/plt-web-base/src/main/java/com/vci/starter/web/wrapper/VciQueryWrapperForDO.java
@@ -175,6 +175,39 @@
}};
/**
+ * BaseModel鍜孊usinessObject涓殑灞炴�ф槧灏勩��
+ * key锛氫负BaseModel涓殑灞炴�э紝value锛氫负BusinessObject涓殑灞炴��
+ */
+ public static final Map<String, String> BASEMODEL_CBO_FIELD_MAP = new HashMap(){{
+ put("oid", "oid");
+ put("revisionoid","revoid");
+ put("nameoid","nameoid");
+ put("btmname","btname");
+ put("lastr","islastr");
+ put("firstr","isfirstr");
+ put("lastv","islastv");
+ put("firstv","isfirstv");
+ put("creator","creator");
+ put("createtime","createtime");
+ put("lastmodifier","modifier");
+ put("lastmodifytime","modifytime");
+ put("revisionrule","revisionrule");
+ put("versionrule","versionrule");
+ put("revisionseq","revisionseq");
+ put("revisionvalue","revisionvalue");
+ put("versionseq","versionseq");
+ put("versionvalue","versionvalue");
+ put("lctid","lctid");
+ put("lcstatus","lcstatus");
+ put("ts","ts");
+ put("id","id");
+ put("name","name");
+ put("description","description");
+ put("owner","owner");
+ put("copyfromversion","fromversion");
+ }};
+
+ /**
* 涓婚敭灞炴��
*/
public static final String OID_FIELD = "oid";
diff --git a/Source/plt-web/plt-web-parent/plt-web-permission/src/main/java/com/vci/web/util/WebUtil.java b/Source/plt-web/plt-web-parent/plt-web-permission/src/main/java/com/vci/web/util/WebUtil.java
index c0f557d..e1037a1 100644
--- a/Source/plt-web/plt-web-parent/plt-web-permission/src/main/java/com/vci/web/util/WebUtil.java
+++ b/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+"锛寁alue锛�"+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){
- //璇存槑杩欎釜灏辨槸鍦˙O瀵硅薄涓婄殑
- Object value = getValueFromField(field.getName(), bo);
- if(value != null){
- //BusinessObject鍜孊aseModel涓紝浠ヤ笅鐨勫睘鎬э紝涓嶇浉鍚岋紝闇�瑕佸崟鐙鐞�
- 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())){
+ //璇存槑杩欎釜灏辨槸鍦˙O瀵硅薄涓婄殑
+ Object value = getValueFromField(field.getName(), bo);
+ if(value != null){
+ //BusinessObject鍜孊aseModel涓紝鏄惁绗竴鐗堟湰鐗堟鐨勫睘鎬э紝闇�瑕佸崟鐙鐞�
+ 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;
--
Gitblit v1.9.3