dangsn
2024-06-05 f29ad099c6dc5c55d6cb94fb190d06743777ec6d
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/WebBoServiceImpl.java
@@ -1,11 +1,11 @@
package com.vci.web.service.impl;
import com.vci.client.bof.ClientBusinessObject;
import com.vci.client.common.oq.OQTool;
import com.vci.client.common.providers.ServiceProvider;
import com.vci.common.qt.object.*;
import com.vci.common.utility.ObjectUtility;
import com.vci.corba.common.PLException;
import com.vci.corba.common.VCIError;
import com.vci.corba.omd.data.AttributeValue;
import com.vci.corba.omd.data.BusinessObject;
import com.vci.corba.omd.qtm.QTInfo;
@@ -341,11 +341,11 @@
               if(key.indexOf("_start")>-1){
                  String attr = key.replace("_start", "");
                  thisConditionMap.put(attr, value);
                  condition = Tool.getCondition(thisConditionMap);
                  condition = OQTool.getCondition(thisConditionMap);
                  if(conditionMap.containsKey(attr + "_end")){//如果没有结束,其实也是允许的;
                     Map<String,String> endConditonMap = new HashMap<String, String>();
                     endConditonMap.put(attr, conditionMap.get(attr + "_end"));
                     condition = Tool.mergeCondition(condition, Tool.getCondition(endConditonMap), Connector.AND);
                     condition = OQTool.mergeCondition(condition, OQTool.getCondition(endConditonMap), Connector.AND);
                  }
               }
            }else{
@@ -366,12 +366,12 @@
               }else {
                  thisConditionMap.put(key, value);
               }
               condition = Tool.getCondition(thisConditionMap);
               condition = OQTool.getCondition(thisConditionMap);
            }
            if(mergeCondition == null){
               mergeCondition = condition;
            }else{
               mergeCondition = Tool.mergeCondition(mergeCondition, condition, isOr? Connector.OR:Connector.AND);
               mergeCondition = OQTool.mergeCondition(mergeCondition, condition, isOr? Connector.OR:Connector.AND);
            }
         }
      }
@@ -601,7 +601,7 @@
      conditionMap = WebUtil.getNotNullMap(conditionMap);
      Condition condition = getConditionByMap(conditionMap);
      if(qt.getCondition() !=null) {
         qt.setCondition(Tool.mergeCondition(qt.getCondition(), condition, Connector.AND));
         qt.setCondition(OQTool.mergeCondition(qt.getCondition(), condition, Connector.AND));
      }else {
         qt.setCondition(condition);
      }
@@ -620,11 +620,11 @@
         ObjectQueryService.FindBTMObjectsV3Result bos = null;
//         String invo = JSONObject.toJSONString(InvocationUtility.getInvocation());
         try{
            //bos = qtService.findBTMObjectsV3(invo,qt.getId(), Tool.qtTOXMl(qt).asXML(),count,refOpts.toArray(new BtmRefQueryOption[0]));
            bos = qtService.findBTMObjectsV3(qt.getId(), Tool.qtTOXMl(qt).asXML(), refOpts.toArray(new BtmRefQueryOption[0]));
            //bos = qtService.findBTMObjectsV3(invo,qt.getId(), OQTool.qtTOXMl(qt).asXML(),count,refOpts.toArray(new BtmRefQueryOption[0]));
            bos = qtService.findBTMObjectsV3(qt.getId(), OQTool.qtTOXMl(qt).asXML(), refOpts.toArray(new BtmRefQueryOption[0]));
         }catch (PLException e){
            //bos = qtService.findBTMObjectsV4(invo,qt.getId(), Tool.qtTOXMl(qt).asXML(),count,refOpts.toArray(new BtmRefQueryOption[0]));
            bos = qtService.findBTMObjectsV3(qt.getId(), Tool.qtTOXMl(qt).asXML(), refOpts.toArray(new BtmRefQueryOption[0]));
            //bos = qtService.findBTMObjectsV4(invo,qt.getId(), OQTool.qtTOXMl(qt).asXML(),count,refOpts.toArray(new BtmRefQueryOption[0]));
            bos = qtService.findBTMObjectsV3(qt.getId(), OQTool.qtTOXMl(qt).asXML(), refOpts.toArray(new BtmRefQueryOption[0]));
         }
         if (bos != null && bos.count > 0) {
            for (com.vci.corba.omd.data.BusinessObject bo : bos.returnValue) {
@@ -952,7 +952,7 @@
         VciBaseUtil.alertNotNull(name,"查询模板的名称");
         // QTWrapper wrapper = platformClientUtil.getQueryService().getQT(name);
         QTInfo wrapper = ServiceProvider.getOMDService().getQTDService().getQT(name);
         qt = Tool.getQTByDoc(DocumentHelper.parseText(wrapper.qtText), name);
         qt = OQTool.getQTByDoc(DocumentHelper.parseText(wrapper.qtText), name);
         //因为之前平台的Tool.replaceQTValues 没有处理 ${xxx}。, 为了忽略大小写,我们这里单独处理 weidy@2021-3-10
         //我们转换为小写
         Condition condition = qt.getCondition();
@@ -990,9 +990,9 @@
            });
         }
      }catch(PLException e){
         //logger.error(e.error_code,e);
         //throw WebUtil.getVciBaseException(e);
      } catch (DocumentException | VCIError e) {
         logger.error(e.code,e);
         throw WebUtil.getVciBaseException(e);
      } catch (DocumentException e) {
         logger.error("查询模板转换",e);
         throw new VciBaseException(this.msgCodePrefix + "qtError", new Object[]{name});
      }
@@ -1032,24 +1032,18 @@
      conditionMap = WebUtil.getNotNullMap(conditionMap);
      Condition condition = getConditionByMap(conditionMap);
      if(qt.getCondition() !=null) {
         qt.setCondition(Tool.mergeCondition(qt.getCondition(), condition, Connector.AND));
         qt.setCondition(OQTool.mergeCondition(qt.getCondition(), condition, Connector.AND));
      }else {
         qt.setCondition(condition);
      }
      int count = 0;
      long count = 0;
      try{
//         count = platformClientUtil.getQueryService().findTotalCount();
         count = Integer.parseInt(String.valueOf(ServiceProvider.getOQService().findTotalCount(qt.getId(), Tool.qtTOXMl(qt).asXML())));
         count = platformClientUtil.getQueryService().findTotalCount(qt.getId(), OQTool.qtTOXMl(qt).asXML());
      }catch (PLException e) {
         try {
//            count = platformClientUtil.getQueryService().findTotalCount(qt.getId(), Tool.qtTOXMl(qt).asXML());
            count = Integer.parseInt(String.valueOf(ServiceProvider.getOQService().findTotalCount(qt.getId(), Tool.qtTOXMl(qt).asXML())));
         }catch (PLException ee) {
//            logger.error(ee.error_code,ee);
//            throw WebUtil.getVciBaseException(ee);
         }
         logger.error(e.code,e);
         throw WebUtil.getVciBaseException(e);
      } 
      return count;
      return (int) count;
   }
   /**