From adaa1d256fb85d2769b2be867b7071a660996c59 Mon Sep 17 00:00:00 2001 From: yuxc <yuxc@vci-tech.com> Date: 星期四, 04 七月 2024 16:54:38 +0800 Subject: [PATCH] 增加变更所有者、状态跃迁等功能 --- Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/UIDataServiceImpl.java | 44 +++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 43 insertions(+), 1 deletions(-) diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/UIDataServiceImpl.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/UIDataServiceImpl.java index a9e66f5..8f0443d 100644 --- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/UIDataServiceImpl.java +++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/UIDataServiceImpl.java @@ -2,6 +2,7 @@ import com.vci.client.common.providers.ClientServiceProvider; import com.vci.corba.common.PLException; +import com.vci.corba.framework.data.UserInfo; import com.vci.corba.omd.data.*; import com.vci.corba.omd.lcm.LifeCycle; import com.vci.file.pagemodel.VciFileObjectVO; @@ -34,6 +35,7 @@ import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; import java.lang.reflect.Method; @@ -2484,7 +2486,6 @@ String revisionoid = Arrays.stream(cbo.hisAttrValList).filter(e -> e.attrName.equals("REVISIONOID")).findFirst().map(e -> e.attrVal).orElse(""); cbo.revisionid = revisionoid; } -// cbo.revisionid = hisAttrValList. boolean b = platformClientUtil.getBOFService().deleteBusinessObject(cbo,type); if(!b){ throw new PLException("500", new String[]{"鏁版嵁鍒犻櫎澶辫触锛侊紒"}); @@ -2492,4 +2493,45 @@ } return BaseResult.success(); } + /** + * 鍙樻洿鎵�鏈夎�� + * @param btmname 涓氬姟绫诲瀷 + * @param oid 涓婚敭 + * @return 鎵ц鐨勭粨鏋� + */ + @Override + public BaseResult changeBusinessObjectOwner(String btmname, String oid) throws PLException { + List<BusinessObject> cbos = boService.queryCBO(btmname,WebUtil.getOidQuery(oid)); + BaseResult<Object> objectBaseResult = new BaseResult<>(); + if(cbos.size() == 0){ + objectBaseResult.setSuccess(false); + throw new PLException("500", new String[]{"娌℃湁鑾峰彇鍒版暟鎹殑涓婚敭"}); + } + UserInfo userInfo = platformClientUtil.getFrameworkService().getUserObjectByUserName(WebUtil.getCurrentUserId()); + for (BusinessObject cbo : cbos) { + platformClientUtil.getBOFService().changeBusinessObjectOwner(cbo,userInfo); + } + return BaseResult.success(); + } + /** + * 鍙樻洿鎵�鏈夎�� + * @param btmname 涓氬姟绫诲瀷 + * @param oid 涓婚敭 + * @param releaseStatus 鍙戝竷鐘舵�� + * @return 鎵ц鐨勭粨鏋� + */ + @Override + @Transactional + public BaseResult transferBusinessObject(String btmname, String oid, String toStatus,String releaseStatus) throws PLException { + List<BusinessObject> cbos = boService.queryCBO(btmname,WebUtil.getOidQuery(oid)); + BaseResult<Object> objectBaseResult = new BaseResult<>(); + if(cbos.size() == 0){ + objectBaseResult.setSuccess(false); + throw new PLException("500", new String[]{"娌℃湁鑾峰彇鍒版暟鎹殑涓婚敭"}); + } + for (BusinessObject cbo : cbos) { + platformClientUtil.getBOFService().transferBusinessObjectAndRelease(cbo, toStatus, releaseStatus); + } + return BaseResult.success(); + } } -- Gitblit v1.9.3