From d0ae279ff3b83358d1c07f4481a041c4ad335026 Mon Sep 17 00:00:00 2001 From: dangsn <dangsn@chicecm.com> Date: 星期二, 03 十二月 2024 11:57:38 +0800 Subject: [PATCH] 提取业务系统使用的功能,独立出一个单独的模块 --- Source/plt-web/plt-web-parent/plt-web-permission/src/main/java/com/vci/web/service/impl/WebBoServiceImpl.java | 140 ++++++++++++++++++++++------------------------ 1 files changed, 66 insertions(+), 74 deletions(-) diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/WebBoServiceImpl.java b/Source/plt-web/plt-web-parent/plt-web-permission/src/main/java/com/vci/web/service/impl/WebBoServiceImpl.java similarity index 97% rename from Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/WebBoServiceImpl.java rename to Source/plt-web/plt-web-parent/plt-web-permission/src/main/java/com/vci/web/service/impl/WebBoServiceImpl.java index 4fab207..54d61ec 100644 --- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/WebBoServiceImpl.java +++ b/Source/plt-web/plt-web-parent/plt-web-permission/src/main/java/com/vci/web/service/impl/WebBoServiceImpl.java @@ -12,7 +12,6 @@ import com.vci.corba.query.ObjectQueryServicePrx; import com.vci.corba.query.data.BtmRefQueryOption; import com.vci.corba.query.data.KV; -import com.vci.frameworkcore.compatibility.SmUserQueryServiceI; import com.vci.omd.utils.ObjectTool; import com.vci.pagemodel.*; import com.vci.starter.web.annotation.Column; @@ -21,12 +20,12 @@ import com.vci.starter.web.exception.VciBaseException; import com.vci.starter.web.pagemodel.DataGrid; import com.vci.starter.web.pagemodel.PageHelper; -import com.vci.starter.web.util.BeanUtil; +import com.vci.starter.web.util.BeanUtilForVCI; +import com.vci.starter.web.util.Lcm.Func; import com.vci.starter.web.util.VciBaseUtil; import com.vci.starter.web.wrapper.VciQueryWrapperForDO; import com.vci.web.properties.WebProperties; import com.vci.web.service.*; -import com.vci.web.util.Func; import com.vci.web.util.PlatformClientUtil; import com.vci.web.util.WebUtil; import org.apache.commons.lang3.StringUtils; @@ -34,10 +33,10 @@ import org.dom4j.DocumentHelper; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; +import javax.annotation.Resource; import java.lang.reflect.Field; import java.util.*; import java.util.stream.Collectors; @@ -48,76 +47,64 @@ * @author weidy */ @Service -public class WebBoServiceImpl implements WebBoServiceI{ - - /** - * 鏋氫妇鏈嶅姟 - */ - @Autowired - private OsEnumServiceI enumService;//鏋氫妇鏈嶅姟 - - /** - * 灞炴�ф湇鍔� - */ - @Autowired - private OsAttributeServiceI attrService;//灞炴�ф湇鍔� +public class WebBoServiceImpl implements WebBoServiceI { - /** - * 鐢熷懡鍛ㄦ湡鐨勬湇鍔� - */ - @Autowired - private OsLifeCycleServiceI lifeService;//鐢熷懡鍛ㄦ湡鏈嶅姟 - - /** - * 鐘舵�佺殑鏈嶅姟 - */ - @Autowired - private OsStatusServiceI statusService; - - /** - * 鐢ㄦ埛鏌ヨ鏈嶅姟 - */ - @Autowired - private SmUserQueryServiceI userQueryService; - - /** - * 閾炬帴绫诲瀷鏈嶅姟 - */ - @Autowired - private WebLoServiceI loService; - - /** - * 閰嶇疆淇℃伅 - */ - @Autowired - private WebProperties webProperties; - - /** - * 澶氳瑷�鍓嶇紑 - */ - private final String msgCodePrefix = "com.vci.web.boService."; - /** * 鏃ュ織瀵硅薄 */ private Logger logger = LoggerFactory.getLogger(getClass()); /** + * 澶氳瑷�鍓嶇紑 + */ + private final String msgCodePrefix = "com.vci.web.boService."; + + /** + * 鏋氫妇鏈嶅姟 + */ + @Resource + private WebEnumServiceI enumService;//鏋氫妇鏈嶅姟 + + /** + * 鐢熷懡鍛ㄦ湡鐨勬湇鍔� + */ + @Resource + private WebLifeCycleServiceI lifeService;//鐢熷懡鍛ㄦ湡鏈嶅姟 + + /** + * 鐘舵�佺殑鏈嶅姟 + */ + @Resource + private WebStatusServiceI statusService; + + /** + * 鐢ㄦ埛鏌ヨ鏈嶅姟 + */ + @Resource + private SmUserQueryServiceI userQueryService; + + /** + * 閰嶇疆淇℃伅 + */ + @Resource + private WebProperties webProperties; + + /** * 涓氬姟绫诲瀷鐨勬湇鍔� */ - @Autowired - private OsBtmServiceI btmService; + @Resource + private WebBtmServiceI btmService; /** * 鐗堟湰瑙勫垯鐨勬湇鍔� */ - @Autowired - private OsRevisionRuleServiceI revisionRuleService; + @Resource + private WebRevisionRuleServiceI revisionRuleService; /** * 骞冲彴璋冪敤瀹㈡埛绔� */ - @Autowired + @Resource private PlatformClientUtil platformClientUtil; /** @@ -893,7 +880,7 @@ */ @Override public List<BusinessObject> queryCBOByScheme(String queryScheme, - Map<String, String> conditionMap, Map<String, String> replaceMap) + Map<String, String> conditionMap, Map<String, Object> replaceMap) throws VciBaseException { PageHelper ph = new PageHelper(-1); return queryCBOByScheme(queryScheme,conditionMap,replaceMap,ph); @@ -911,7 +898,7 @@ */ @Override public List<BusinessObject> queryCBOByScheme(String queryScheme, - Map<String, String> conditionMap, Map<String, String> replaceMap, + Map<String, String> conditionMap, Map<String, Object> replaceMap, PageHelper ph) throws VciBaseException { List<String> clauseList = new ArrayList<String>(); clauseList.add("*"); @@ -926,7 +913,7 @@ * @throws VciBaseException 鏌ヨ鍑洪敊鐨勬椂鍊欎細鎶涘嚭寮傚父 */ @Override - public QueryTemplate getQtByName(String name, Map<String, String> replaceMap) throws VciBaseException{ + public QueryTemplate getQtByName(String name, Map<String, Object> replaceMap) throws VciBaseException{ QueryTemplate qt = null; try{ VciBaseUtil.alertNotNull(name,"鏌ヨ妯℃澘鐨勫悕绉�"); @@ -935,9 +922,10 @@ //鍥犱负涔嬪墠骞冲彴鐨凾ool.replaceQTValues 娌℃湁澶勭悊 ${xxx}銆傦紝 涓轰簡蹇界暐澶у皬鍐欙紝鎴戜滑杩欓噷鍗曠嫭澶勭悊 weidy@2021-3-10 //鎴戜滑杞崲涓哄皬鍐� Condition condition = qt.getCondition(); - Map<String,String> replaceLowMap = new HashMap<>(); + Map<String,Object> replaceLowMap = new HashMap<>(); if(condition !=null && condition.getCIMap()!=null){ // Map<String, String> systemVarValueMap = VciSystemVarConstants.getSystemVarValueMap(); + //杞皬鍐� if(!CollectionUtils.isEmpty(replaceMap)){ replaceMap.forEach((key,value)->{ replaceLowMap.put(key.toLowerCase(),value); @@ -985,7 +973,7 @@ * @param qt * @param replaceLowMap */ - private void recurReplaceCiMap(QueryTemplate qt, Map<String,String> replaceLowMap){ + private void recurReplaceCiMap(QueryTemplate qt, Map<String,Object> replaceLowMap){ //璺冲嚭閫掑綊 if(Func.isEmpty(qt)){ return; @@ -1009,7 +997,7 @@ } } }else if(replaceLowMap.containsKey(value.toLowerCase())){ - lInfo.getValue().setOrdinaryValue(replaceLowMap.get(value.toLowerCase())); + lInfo.getValue().setOrdinaryValue((String) replaceLowMap.get(value.toLowerCase())); } }else { recurReplaceCiMap(lInfo.getValue().getQueryTemplate(),replaceLowMap); @@ -1030,7 +1018,7 @@ */ @Override public List<BusinessObject> queryCBOByScheme(String queryScheme, - Map<String, String> conditionMap, Map<String, String> replaceMap, + Map<String, String> conditionMap, Map<String, Object> replaceMap, PageHelper ph, List<String> clauseList) throws VciBaseException { QueryTemplate qt = getQtByName(queryScheme,replaceMap); return baseQueryCBO(qt,conditionMap,ph,clauseList); @@ -1134,7 +1122,7 @@ */ @Override public int queryCountByScheme(String queryScheme, - Map<String, String> conditionMap, Map<String, String> replaceMap) + Map<String, String> conditionMap, Map<String, Object> replaceMap) throws VciBaseException { QueryTemplate qt = getQtByName(queryScheme,replaceMap); return baseQueryCount(qt,conditionMap); @@ -1482,7 +1470,7 @@ @Override public <T> List<T> queryObjectByScheme(String queryScheme, Class<T> c, Map<String, String> conditionMap, PageHelper ph, - Map<String, String> replaceMap) throws VciBaseException { + Map<String, Object> replaceMap) throws VciBaseException { WebUtil.alertNotNull(queryScheme,"鏌ヨ鏂规"); //鐩存帴浠庡璞¢噷鍘绘煡璇笟鍔$被鍨嬬殑鍚嶇О swapConditionMap(c,conditionMap); @@ -2108,7 +2096,7 @@ */ @Override public DataGrid queryGridByScheme(String queryScheme, - Map<String, String> conditionMap, Map<String, String> replaceMap) + Map<String, String> conditionMap, Map<String, Object> replaceMap) throws VciBaseException { return queryGridByScheme(queryScheme,conditionMap,replaceMap,new PageHelper(-1,true),null); } @@ -2124,7 +2112,7 @@ */ @Override public DataGrid queryGridByScheme(String queryScheme, - Map<String, String> conditionMap, Map<String, String> replaceMap, + Map<String, String> conditionMap, Map<String, Object> replaceMap, PageHelper ph) throws VciBaseException { return queryGridByScheme(queryScheme,conditionMap,replaceMap,ph,null); } @@ -2141,7 +2129,7 @@ */ @Override public DataGrid queryGridByScheme(String queryScheme, - Map<String, String> conditionMap, Map<String, String> replaceMap, + Map<String, String> conditionMap, Map<String, Object> replaceMap, PageHelper ph, List<String> clauseList) throws VciBaseException { if(ph == null){ ph = new PageHelper(-1,true); @@ -2212,7 +2200,7 @@ */ @Override public DataGrid queryGridClassByScheme(String queryScheme, Class c, - Map<String, String> conditionMap,Map<String,String> replaceMap) throws VciBaseException { + Map<String, String> conditionMap,Map<String,Object> replaceMap) throws VciBaseException { return queryGridClassByScheme(queryScheme,c,conditionMap,replaceMap,new PageHelper(-1,true)); } @@ -2227,7 +2215,7 @@ */ @Override public DataGrid queryGridClassByScheme(String queryScheme, Class c, - Map<String, String> conditionMap, Map<String,String> replaceMap,PageHelper ph) + Map<String, String> conditionMap, Map<String,Object> replaceMap,PageHelper ph) throws VciBaseException { if(ph == null){ ph = new PageHelper(-1,true); @@ -2272,9 +2260,13 @@ public Map cbo2Map(BusinessObject cbo) throws VciBaseException { Map<String,String> map = new HashMap<String, String>(); WebUtil.copyValueToMapFromCbos(cbo, map); - return map; + //TODO锛�20241128 杩囨护鎺夌┖key鍜岀┖value + Map<String, Object> filteredCbo2Map = map.entrySet() + .stream() + .filter(entry -> entry.getKey() != null && !entry.getKey().isEmpty() && entry.getValue() != null && !entry.getValue().toString().isEmpty()) + .collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue)); + return filteredCbo2Map; } - /** * map杞负BusinessObject @@ -2525,7 +2517,7 @@ @Override public <T> int countByQueryWrapper(VciQueryWrapperForDO queryWrapper, Class<T> doClass) throws VciBaseException { VciQueryWrapperForDO queryWrapperForDO = new VciQueryWrapperForDO(null,doClass); - BeanUtil.convert(queryWrapper,queryWrapperForDO); + BeanUtilForVCI.convert(queryWrapper,queryWrapperForDO); queryWrapperForDO.clearPage(); queryWrapperForDO.wrapperSql(); String sql= queryWrapperForDO.getSelectFieldSql() + " from " + queryWrapperForDO.getTableName() + " " + queryWrapperForDO.getTableNick() + queryWrapperForDO.getLinkTableSql() ; -- Gitblit v1.9.3