ÎļþÃû´Ó Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/WebLoServiceImpl.java ÐÞ¸Ä |
| | |
| | | import com.vci.corba.query.ObjectQueryService; |
| | | import com.vci.corba.query.data.BOAndLO; |
| | | import com.vci.omd.utils.ObjectTool; |
| | | import com.vci.query.UILinkTypeDataQuery; |
| | | import com.vci.starter.web.constant.QueryOptionConstant; |
| | | import com.vci.starter.web.exception.VciBaseException; |
| | | import com.vci.starter.web.pagemodel.DataGrid; |
| | |
| | | import com.vci.starter.web.util.VciBaseUtil; |
| | | import com.vci.starter.web.util.VciDateUtil; |
| | | import com.vci.web.properties.WebProperties; |
| | | import com.vci.web.query.UILinkTypeDataQuery; |
| | | import com.vci.web.service.WebBoServiceI; |
| | | import com.vci.web.service.WebLoServiceI; |
| | | import com.vci.web.util.PlatformClientUtil; |
| | |
| | | */ |
| | | @Service |
| | | public class WebLoServiceImpl implements WebLoServiceI { |
| | | /** |
| | | * æ¥å¿å¯¹è±¡ |
| | | */ |
| | | private Logger logger = LoggerFactory.getLogger(getClass()); |
| | | |
| | | /** |
| | | * å¤è¯è¨åç¼ |
| | | */ |
| | | private final String msgCodePrefix = "com.vci.web.loService."; |
| | | |
| | | /** |
| | | * æ¥å¿å¯¹è±¡ |
| | | */ |
| | | private Logger logger = LoggerFactory.getLogger(getClass()); |
| | | |
| | | |
| | | @Autowired |
| | | private WebBoServiceI boService; |
| | | |
| | | /** |
| | | * |
| | | */ |
| | | @Autowired |
| | | private WebProperties webProperties; |
| | | |
| | |
| | | LO_BASE_FIELD_MAP.put("oid","oid"); |
| | | LO_BASE_FIELD_MAP.put("creator","creator"); |
| | | LO_BASE_FIELD_MAP.put("createTime","createTime"); |
| | | //LO_BASE_FIELD_MAP.put("lastModifier","lastModifier"); |
| | | //LO_BASE_FIELD_MAP.put("lastModifyTime","lastModifyTime"); |
| | | LO_BASE_FIELD_MAP.put("modifier","lastModifier"); |
| | | LO_BASE_FIELD_MAP.put("modifyTime","lastModifyTime"); |
| | | LO_BASE_FIELD_MAP.put("fromOid","f_oid"); |
| | | //LO_BASE_FIELD_MAP.put("fromRevisionOid","f_revisionoid"); |
| | | LO_BASE_FIELD_MAP.put("fromRevOid","f_revisionoid"); |
| | | LO_BASE_FIELD_MAP.put("fromNameOid","f_nameoid"); |
| | | //LO_BASE_FIELD_MAP.put("fromBTMName","f_btwname"); |
| | | LO_BASE_FIELD_MAP.put("fromBTName","f_btwname"); |
| | | //LO_BASE_FIELD_MAP.put("toRevisionOid","t_revisionoid"); |
| | | LO_BASE_FIELD_MAP.put("toRevOid","t_revisionoid"); |
| | | LO_BASE_FIELD_MAP.put("toNameOid","t_nameoid"); |
| | | //LO_BASE_FIELD_MAP.put("toBTMName","t_btwname"); |
| | | LO_BASE_FIELD_MAP.put("toBTName","t_btwname"); |
| | | LO_BASE_FIELD_MAP.put("toOid","t_oid"); |
| | | LO_BASE_FIELD_MAP.put("ts","ts"); |
| | | //LO_BASE_FIELD_MAP.put("linkTypeName","linkTypeName"); |
| | | LO_BASE_FIELD_MAP.put("ltName","linkTypeName"); |
| | | } |
| | | |
| | |
| | | String[] sort = ph.getSort().split(","); |
| | | String[] order = ph.getOrder().split(","); |
| | | if(sort.length != order.length){ |
| | | throw new VciBaseException(msgCodePrefix + ".sortlengtherror",new Object[]{sort.length,order.length}); |
| | | throw new VciBaseException(msgCodePrefix + "sortLengthError",new Object[]{sort.length,order.length}); |
| | | } |
| | | List<OrderInfo> orderInfoList = new ArrayList<OrderInfo>(); |
| | | for(int i = 0 ; i < sort.length ;i++){ |
| | |
| | | } |
| | | return rtnOBJs; |
| | | } |
| | | } catch (PLException e) { |
| | | // logger.error(e.error_code,e); |
| | | // throw WebUtil.getVciBaseException(e); |
| | | } catch (Exception e) { |
| | | logger.error("æ¥è¯¢è¿æ¥ç±»å失败ï¼",e); |
| | | throw new VciBaseException("æ¥è¯¢é¾æ¥ç±»å失败ï¼", new Object[]{}, e); |
| | | } |
| | | return rtnOBJs; |
| | | } |
| | | // |
| | | // @Override |
| | | // public Map<String, BusinessObject> queryLinkedCbo(LinkObject[] lo, |
| | | // boolean isDirection) throws VciBaseException { |
| | | // LinkObject[] clos = new LinkObject[lo.length]; |
| | | // for(int i =0 ; i < lo.length; i ++){ |
| | | // LinkObject clo = new LinkObject(); |
| | | // clo = lo[i]; |
| | | // clos[i] = clo; |
| | | // } |
| | | // return queryLinkedCbo(clos,isDirection); |
| | | // } |
| | | |
| | | @Override |
| | | public Map<String, BusinessObject> queryLinkedCbo(List los, |
| | |
| | | public Map clo2Map(LinkObject clo) throws VciBaseException { |
| | | Map<String,String> map = new HashMap<String, String>(); |
| | | WebUtil.copyValueToMapFromClos(clo, map); |
| | | return map; |
| | | //TODO:20241128 è¿æ»¤æç©ºkeyå空value |
| | | Map<String, Object> filteredClo2Map = 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 filteredClo2Map; |
| | | } |
| | | |
| | | @Override |
| | |
| | | WebUtil.alertNotNull(loName,"龿¥"); |
| | | return null; |
| | | //todo å¨å¹³å°éé¢éè¦ä¼ å
¥å¯¹è±¡ï¼ç°å¨æ¯å符串ï¼éè¦çå¹³å°å¦ä½å¤ç |
| | | // return loOperation.createLinkObject(loName,WebUtil.getCurrentUserId()); |
| | | //return loOperation.createLinkObject(loName,WebUtil.getCurrentUserId()); |
| | | } |
| | | |
| | | /** |
| | |
| | | * @return 龿¥ç±»ååå
³èçto端 |
| | | */ |
| | | @Override |
| | | public List<com.vci.corba.query.data.BOAndLO> queryCLOAndBOBySchema(UILinkTypeDataQuery linkTypeDataQuery) { |
| | | public List<BOAndLO> queryCLOAndBOBySchema(UILinkTypeDataQuery linkTypeDataQuery) { |
| | | VciBaseUtil.alertNotNull(linkTypeDataQuery,"龿¥ç±»åæ¥è¯¢å¯¹è±¡",linkTypeDataQuery.getQueryTemplateName(),"æ¥è¯¢æ¨¡æ¿çåç§°"); |
| | | QueryTemplate qt =boService.getQtByName(linkTypeDataQuery.getQueryTemplateName(),linkTypeDataQuery.getReplaceMap()); |
| | | return queryCLOAndBOByQueryTemplate(qt,linkTypeDataQuery); |
| | |
| | | * @param linkTypeDataQuery 龿¥ç±»åçæ¥è¯¢å¯¹è±¡ |
| | | * @return 龿¥ç±»ååä¸å¡ç±»å |
| | | */ |
| | | private List<com.vci.corba.query.data.BOAndLO> queryCLOAndBOByQueryTemplate(QueryTemplate qt,UILinkTypeDataQuery linkTypeDataQuery){ |
| | | private List<BOAndLO> queryCLOAndBOByQueryTemplate(QueryTemplate qt,UILinkTypeDataQuery linkTypeDataQuery){ |
| | | if(StringUtils.isNotBlank(linkTypeDataQuery.getToBtmType()) && StringUtils.isBlank(qt.getBtmType())) { |
| | | qt.setBtmType(linkTypeDataQuery.getToBtmType()); |
| | | } |
| | |
| | | } |
| | | boService.setPageAndOrderToQT(qt,linkTypeDataQuery.getPageHelper()); |
| | | try { |
| | | com.vci.corba.query.data.BOAndLO[] bos = platformClientUtil.getQueryService().getBOAndLOS(qt.getId(), OQTool.qtTOXMl(qt).asXML(),linkTypeDataQuery.getParentOid()==null?"":linkTypeDataQuery.getParentOid()); |
| | | BOAndLO[] bos = platformClientUtil.getQueryService().getBOAndLOS(qt.getId(), OQTool.qtTOXMl(qt).asXML(),linkTypeDataQuery.getParentOid()==null?"":linkTypeDataQuery.getParentOid()); |
| | | return Arrays.stream(bos).collect(Collectors.toList()); |
| | | } catch (PLException e) { |
| | | // logger.error(e.error_code,e); |
| | |
| | | * @return 龿¥å¯¹è±¡åto端ä¸å¡å¯¹è±¡ |
| | | */ |
| | | @Override |
| | | public List<com.vci.corba.query.data.BOAndLO> queryCLOAndBoByLinkType(UILinkTypeDataQuery linkTypeDataQuery){ |
| | | public List<BOAndLO> queryCLOAndBoByLinkType(UILinkTypeDataQuery linkTypeDataQuery){ |
| | | VciBaseUtil.alertNotNull(linkTypeDataQuery,"龿¥ç±»åæ¥è¯¢å¯¹è±¡",linkTypeDataQuery.getLinkType(),"龿¥ç±»åçåç§°"); |
| | | QueryTemplate qt = null; |
| | | if(StringUtils.isBlank(linkTypeDataQuery.getQueryTemplateName())){ |
| | |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 龿¥ç±»å |
| | | * |
| | | * @param clo 龿¥ç±»å |
| | | * @param attributeName 屿§åç§° |
| | | * @param attributeValue 屿§çå¼ |
| | | */ |
| | | @Override |
| | | public void setAttribute(LinkObject clo, String attributeName, String attributeValue) { |
| | | AttributeValue[] attrValues = clo.newAttrValList; |
| | | ArrayList<AttributeValue> attrValList = new ArrayList(); |
| | | AttributeValue attrVal; |
| | | int i; |
| | | if (attrValues != null && attrValues.length > 0) { |
| | | AttributeValue[] var9 = attrValues; |
| | | i = attrValues.length; |
| | | |
| | | for(int var7 = 0; var7 < i; ++var7) { |
| | | attrVal = var9[var7]; |
| | | attrValList.add(attrVal); |
| | | } |
| | | } |
| | | |
| | | attrVal = null; |
| | | boolean isExist = false; |
| | | |
| | | for(i = 0; i < attrValList.size(); ++i) { |
| | | attrVal = attrValList.get(i); |
| | | if (attrVal.attrName.toUpperCase().equals(attributeName.toUpperCase())) { |
| | | attrVal.attrVal = attributeValue; |
| | | isExist = true; |
| | | break; |
| | | } |
| | | } |
| | | |
| | | if (!isExist) { |
| | | attrVal = new AttributeValue(); |
| | | attrVal.attrName = attributeName.toUpperCase(); |
| | | attrVal.attrVal = attributeValue; |
| | | attrValList.add(attrVal); |
| | | } |
| | | |
| | | clo.newAttrValList = attrValList.toArray(new AttributeValue[attrValList.size()]); |
| | | } |
| | | } |