Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/dto/BaseModelDTO.java
@@ -19,6 +19,7 @@ * 数据 */ private Map<String,String> data = new HashMap<>(); /** * 子表的业务类型 */ Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/dto/DeleteDataDTO.java
@@ -18,6 +18,7 @@ * 序列化 */ private static final long serialVersionUID = -7983807253912311472L; /** * 校验是否被引用的开关 */ Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/model/PRMItemDO.java
@@ -163,11 +163,11 @@ /** * 查询模板名称 */ private String itemQtName = ""; private String itemQtName = "0"; /** * 是否必填 0:否,1:是 */ private String itemIsRequired = ""; private String itemIsRequired = "0"; /** *http存储开关 0:否,1:是 */ Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/pagemodel/MenuVO.java
@@ -81,7 +81,7 @@ private Integer sort; /** * 菜单类型 * 菜单类型: 0:菜单,1:按钮 */ private Integer category; Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/PlatformWebApplication.java
@@ -41,4 +41,4 @@ public void preDestroy(){ System.out.println("停了平台web客户端的服务"); } } } Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/SmFunctionQueryServicePlatformImpl.java
@@ -340,6 +340,7 @@ menuVO.setModeType("FunctionObject"); menuVO.setIsValid(info.isValid); menuVO.setHasChildren(false); menuVO.setCategory(1); menuVOList.add(menuVO); } } @@ -357,6 +358,7 @@ MenuVO menuVO = this.functionInfoToMenuVO(funcInfo); menuVO.setChildType(childType); menuVO.setModeType("FunctionObject"); menuVO.setCategory(0); menuVOList.add(menuVO); } } @@ -389,7 +391,9 @@ FunctionInfo funcInfo = funcInfos[i]; MenuVO menuVO = this.functionInfoToMenuVO(funcInfo); menuVO.setModeType("FunctionObject"); childType = this.checkChildObject(funcInfos[i].id); menuVO.setChildType(childType); menuVO.setCategory(0); menuVOList.add(menuVO); } return menuVOList; @@ -416,7 +420,7 @@ menuVO.setName(operateInfo.name); menuVO.setCode(operateInfo.identify); menuVO.setAlias(operateInfo.alias); menuVO.setCategory(2); menuVO.setCategory(1); menuVO.setChildType(0); menuVO.setRemark(operateInfo.desc); menuVO.getMeta().put("keepAlive",false); @@ -471,7 +475,7 @@ @Override public int checkChildObject(String moduleId) throws VciBaseException { long res = 0; try{//20D63A69-C6BC-8519-8B2B-E5ACFEA62394 try{ res = platformClientUtil.getFrameworkService().checkChildObject(moduleId); }catch (PLException e) { e.printStackTrace(); Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/WebPortalVIController.java
@@ -93,7 +93,6 @@ }else{ return portalVIServiceI.addSave(portalVIDTO); } } /** * 表单/table删除 Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/WebUIDataController.java
@@ -7,13 +7,17 @@ import com.vci.dto.FormLinkDataDTO; import com.vci.starter.web.annotation.controller.VciUnCheckRight; import com.vci.starter.web.annotation.log.VciBusinessLog; import com.vci.starter.web.exception.VciBaseException; import com.vci.starter.web.pagemodel.*; import com.vci.pagemodel.ReferConfigVO; import com.vci.pagemodel.UIFormDataVO; import com.vci.starter.web.util.VciBaseUtil; import com.vci.web.query.UIDataGridQuery; import com.vci.web.query.UIFormQuery; import com.vci.web.query.UITreeQuery; import com.vci.web.service.UIDataServiceI; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; import org.springframework.web.bind.annotation.*; @@ -39,6 +43,11 @@ private UIDataServiceI uiDataService; /** * 日志 */ private Logger logger = LoggerFactory.getLogger(getClass()); /** * 列表查询 * @param dataGridQuery 查询对象 * @return 列表数据 @@ -59,7 +68,14 @@ @VciUnCheckRight @VciBusinessLog(operateName = "表单的查询",description = "${param.btmname}里的${param.formDefineId}") public BaseResult<UIFormDataVO> getDataForForm(UIFormQuery formQuery){ return BaseResult.success(uiDataService.getDataForForm(formQuery)); try { return BaseResult.success(uiDataService.getDataForForm(formQuery)); }catch (Exception e){ e.printStackTrace(); String errorMsg = "表单数据查询时出现错误,原因:"+ VciBaseUtil.getExceptionMessage(e); logger.error(errorMsg); throw new VciBaseException(errorMsg); } } /** @@ -83,7 +99,14 @@ @VciUnCheckRight @VciBusinessLog(operateName = "添加数据",description = "${param.btmname}") public BaseResult<Map<String,Object>> addSave(@RequestBody FormDataDTO formDataDTO){ return uiDataService.addSave(formDataDTO); try { return uiDataService.addSave(formDataDTO); }catch (Exception e){ e.printStackTrace(); String errorMsg = "添加数据时出现错误,原因:"+ VciBaseUtil.getExceptionMessage(e); logger.error(errorMsg); throw new VciBaseException(errorMsg); } } /** @@ -94,7 +117,14 @@ @PostMapping("/linkAddSave") @VciBusinessLog(operateName = "添加链接数据",description = "${param.linkType}") public BaseResult<String> linkAddSave(@RequestBody FormLinkDataDTO formLinkDataDTO){ return uiDataService.linkAddSave(formLinkDataDTO); try { return uiDataService.linkAddSave(formLinkDataDTO); }catch (Exception e){ e.printStackTrace(); String errorMsg = "添加链接类型数据时出现错误,原因:"+ VciBaseUtil.getExceptionMessage(e); logger.error(errorMsg); throw new VciBaseException(errorMsg); } } /** @@ -106,7 +136,14 @@ @VciUnCheckRight @VciBusinessLog(operateName = "修改数据",description = "${param.btmname}里的${param.oid}") public BaseResult<Map<String,Object>> editSave(@RequestBody FormDataDTO formDataDTO){ return uiDataService.editSave(formDataDTO); try { return uiDataService.editSave(formDataDTO); }catch (Exception e){ e.printStackTrace(); String errorMsg = "修改数据时出现错误,原因:"+ VciBaseUtil.getExceptionMessage(e); logger.error(errorMsg); throw new VciBaseException(errorMsg); } } /** @@ -117,7 +154,14 @@ @VciBusinessLog(operateName = "修改链接类型数据",description = "${param.linkType}里的${param.oid}") @PutMapping("/linkEditSave") public BaseResult linkEditSave(@RequestBody FormLinkDataDTO formLinkDataDTO){ return uiDataService.linkEditSave(formLinkDataDTO); try { return uiDataService.linkEditSave(formLinkDataDTO); }catch (Exception e){ e.printStackTrace(); String errorMsg = "修改链接类型的数据时出现错误,原因:"+ VciBaseUtil.getExceptionMessage(e); logger.error(errorMsg); throw new VciBaseException(errorMsg); } } /** @@ -156,10 +200,17 @@ * @return 执行的结果 */ @DeleteMapping("/deleteData") @VciUnCheckRight //@VciUnCheckRight @VciBusinessLog(operateName = "删除数据",description = "${param.dataList.0.btmname}的${param.dataList.${join}.oid}") public BaseResult deleteData(@RequestBody DeleteDataDTO deleteDataDTO){ return uiDataService.batchDelete(deleteDataDTO); try { return uiDataService.batchDelete(deleteDataDTO); }catch (Exception e){ e.printStackTrace(); String errorMsg = "删除数据时出现错误,原因:"+ VciBaseUtil.getExceptionMessage(e); logger.error(errorMsg); throw new VciBaseException(errorMsg); } } /** @@ -181,7 +232,14 @@ @GetMapping("/defaultReferDataGrid") @VciBusinessLog(operateName = "获取参照的列表数据",description = "") public DataGrid defaultReferDataGrid(ReferConfigVO referConfigVO,PageHelper pageHelper){ return uiDataService.referDataGrid(referConfigVO,pageHelper); try { return uiDataService.referDataGrid(referConfigVO,pageHelper); }catch (Exception e){ e.printStackTrace(); String errorMsg = "默认的参照列表时出现错误,原因:"+ VciBaseUtil.getExceptionMessage(e); logger.error(errorMsg); throw new VciBaseException(errorMsg); } } /** Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/OsBtmServiceI.java
@@ -103,11 +103,21 @@ List<OsBtmTypeVO> listBtmByIds(Collection<String> btmIds); /** * TODO:尽量别用这个方法很慢,做了一次全查再转来转去 * 使用编号获取业务类型 * @param id 编号 * @return 业务类型 */ OsBtmTypeVO getBtmById(String id); /** * 使用类型名获取业务类型,查不到直接报错 * @param btmName 类型名 * @return 业务类型 * @throws */ OsBtmTypeVO getBtmByName(String btmName) throws PLException; /** * 使用编号获取业务类型 * @param id 编号 Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/UIDataServiceI.java
@@ -42,7 +42,7 @@ * @return 表单的数据 * @throws VciBaseException 查询出错的时候会抛出异常 */ UIFormDataVO getDataForForm(UIFormQuery formQuery) throws VciBaseException; UIFormDataVO getDataForForm(UIFormQuery formQuery) throws VciBaseException, PLException; /** * 获取树形数据 @@ -108,7 +108,7 @@ * @return 执行结果和显示后的值 * @throws VciBaseException 保存出错的时候会抛出异常 */ BaseResult<Map<String,Object>> addSave(FormDataDTO formDataDTO) throws VciBaseException; BaseResult<Map<String,Object>> addSave(FormDataDTO formDataDTO) throws VciBaseException, PLException; /** * 业务类型 @@ -160,7 +160,7 @@ * @return 执行结果和主键 * @throws VciBaseException 保存出错的时候会抛出异常 */ BaseResult<String> batchAddSave(FormDataDTOList formDataDTOList) throws VciBaseException; BaseResult<String> batchAddSave(FormDataDTOList formDataDTOList) throws VciBaseException, PLException; /** * 修改数据。注意表单定义的字段才会被修改,ts这种默认字段除外 @@ -168,7 +168,7 @@ * @return 执行结果和显示后的值 * @throws VciBaseException 保存出错的时候会抛出异常 */ BaseResult<Map<String,Object>> editSave(FormDataDTO formDataDTO) throws VciBaseException; BaseResult<Map<String,Object>> editSave(FormDataDTO formDataDTO) throws VciBaseException, PLException; /** * 数据升版 @@ -184,7 +184,7 @@ * @return 执行结果和显示后的值 * @throws VciBaseException 保存出错的时候会抛出异常 */ BaseResult<String> batchEditSave(FormDataDTOList formDataDTOList) throws VciBaseException; BaseResult<String> batchEditSave(FormDataDTOList formDataDTOList) throws VciBaseException, PLException; /** * 批量删除 @@ -192,7 +192,7 @@ * @return 执行结果 * @throws VciBaseException 数据被引用的时候会抛出异常 */ BaseResult batchDelete(DeleteDataDTO deleteDataDTO) throws VciBaseException; BaseResult batchDelete(DeleteDataDTO deleteDataDTO) throws VciBaseException, PLException; /** * 链接类型添加 @@ -200,7 +200,7 @@ * @return 链接类型的主键 * @throws VciBaseException 参数为空,必输项缺失 */ BaseResult<String> linkAddSave(FormLinkDataDTO formLinkDataDTO) throws VciBaseException; BaseResult<String> linkAddSave(FormLinkDataDTO formLinkDataDTO) throws VciBaseException, PLException; /** * 设置值到业务类型的对象上 @@ -217,7 +217,7 @@ * @return 执行结果 * @throws VciBaseException 参数为空,必输项缺失 */ BaseResult linkEditSave(FormLinkDataDTO formLinkDataDTO) throws VciBaseException; BaseResult linkEditSave(FormLinkDataDTO formLinkDataDTO) throws VciBaseException, PLException; /** * 删除链接类型 @@ -233,7 +233,7 @@ * @param pageHelper 分页的工具 * @return 列表数据 */ DataGrid referDataGrid(ReferConfigVO referConfigVO, PageHelper pageHelper); DataGrid referDataGrid(ReferConfigVO referConfigVO, PageHelper pageHelper) throws PLException; /** * 获取树形的参照 Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsActionServiceImpl.java
@@ -186,7 +186,8 @@ @Override public BaseResult getActionTableData(PLActionQueryDTO dto) throws PLException { Constraint[] consArray ; if(StringUtils.isNotBlank(dto.getPlactioncls())){ //这儿要用!=null控制,查询未分类节点的时候传的"" if(dto.getPlactioncls() != null){ consArray = new Constraint[7]; consArray[6] = new Constraint("plactioncls", dto.getPlactioncls().equals("root") ? "": dto.getPlactioncls()); }else { Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsBtmServiceImpl.java
@@ -246,7 +246,7 @@ vo.setDelimiter(btmItem.delimiter); vo.setfName(btmItem.fName); vo.setVersionRule(String.valueOf(btmItem.verRuleName)); if (StringUtils.isNotBlank(vo.getRevisionRuleName()) || vo.isInputRevisionFlag()) { if (StringUtils.isNotBlank(vo.getRevisionRuleId()) || vo.isInputRevisionFlag()) { vo.setRevisionFlag(true); } vo.setLifeCycleIds(Arrays.stream(btmItem.lifeCycles).collect(Collectors.joining(","))); @@ -313,6 +313,25 @@ } return self.selectAllBtmMap().getOrDefault(id.toLowerCase(), null); } /** * 使用类型名获取业务类型,查不到直接报错 * @param btmName 类型名 * @return 业务类型 * @throws */ @Override public OsBtmTypeVO getBtmByName(String btmName) throws PLException{ if(Func.isBlank(btmName)){ throw new PLException("500",new String[]{"查询条件类型名不能为空!"}); } BizType bizType = platformClientUtil.getBtmService().getBizTypeByName(btmName); if(Func.isEmpty(bizType) || Func.isBlank(bizType.oid)){ throw new PLException("500",new String[]{"根据【"+btmName+"】未查询到对应业务类型!"}); } return btmDO2VO(bizType,null); } /** * 使用编号获取业务类型 * Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsPortalVIServiceImpl.java
@@ -53,7 +53,7 @@ import java.util.stream.Collectors; /* * 链接类型服务 * 表单/表格服务 * @author xiej * @date 2024-08-14 */ @@ -211,7 +211,13 @@ if (formFlag) { throw new Throwable(viewName + "数据已经被UI组件引用,请重新选择要删除的对象!"); } UITools.getService().deletePortalVIByID(id); PortalVI portalVI = new PortalVI(); portalVI.id = portalVIDTO.getId(); portalVI.viName = portalVIDTO.getViName(); portalVI.viType = portalVIDTO.getViType(); portalVI.typeName = portalVIDTO.getTypeName(); portalVI.typeFlag = portalVIDTO.getTypeFlag(); platformClientUtil.getPortalService().deletePortalVI(portalVI); } }catch (Throwable e){ String exceptionMessage = "删除表单时出现错误,原因:" + VciBaseUtil.getExceptionMessage(e); @@ -224,20 +230,26 @@ @Override public boolean delete(String ids) throws PLException { VciBaseUtil.alertNotNull(ids,"主键"); List<String> idsList= VciBaseUtil.str2List(ids); List<PortalVI> PortalVIList= new ArrayList<>(); DeletePortalVIDTOList portalVIDTOList=new DeletePortalVIDTOList(); List<String> idsList = VciBaseUtil.str2List(ids); List<PortalVIDTO> portalVIDTOList = new ArrayList<>(); DeletePortalVIDTOList deletePortalVIDTOList=new DeletePortalVIDTOList(); idsList.stream().forEach(id->{ PortalVI portalVI= null; try { portalVI = platformClientUtil.getPortalService().getPortalVIById(id); PortalVIList.add(portalVI); PortalVIDTO portalVIDTO = new PortalVIDTO(); portalVIDTO.setId(portalVI.id); portalVIDTO.setTypeFlag(portalVI.typeFlag); portalVIDTO.setTypeName(portalVI.typeName); portalVIDTO.setViName(portalVI.viName); portalVIDTO.setViType(portalVI.viType); portalVIDTOList.add(portalVIDTO); } catch (PLException e) { e.printStackTrace(); } }); portalVIDTOList.setPortalVIDTOList(portalVIO2DTOS(PortalVIList)); return delete(portalVIDTOList); deletePortalVIDTOList.setPortalVIDTOList(portalVIDTOList); return delete(deletePortalVIDTOList); } /** @@ -648,7 +660,7 @@ try { VciBaseUtil.alertNotNull( portalVIDTO.getViName(),"名称" ,portalVIDTO.getPrm().getFormQtName(),"绑定表单"); /*,portalVIDTO.getPrm().getFormQtName(),"绑定表单"*/); if(portalVIDTO.getPrm()==null||portalVIDTO.getPrm().getPrmItemList()==null||portalVIDTO.getPrm().getPrmItemList().size()==0){ throw new Throwable(labelName+",未设置"); } @@ -692,7 +704,7 @@ }else{ flag=platformClientUtil.getPortalService().judgeUpdateButton(portalVIDTO.getTypeFlag(), portalVIDTO.getViName(), portalVIDTO.getTypeName()); } PortalVI pvi=portalVIDTOO2VI(portalVIDTO); PortalVI pvi = portalVIDTOO2VI(portalVIDTO); if (!isEdit) { flag= platformClientUtil.getPortalService().savePortalVI(pvi); } else { @@ -801,7 +813,7 @@ */ @Override public List<PortalVIDTO> portalVIO2DTOS(Collection<PortalVI> PortalVIS) { List<PortalVIDTO>PortalVIDTOS = new ArrayList<>(); List<PortalVIDTO> PortalVIDTOS = new ArrayList<>(); Optional.ofNullable(PortalVIS).orElseGet(()->new ArrayList<>()).stream().forEach(PortalVI -> { PortalVIDTO PPortalVIDTO = portalVIO2DTO(PortalVI); PortalVIDTOS.add(PPortalVIDTO); @@ -809,15 +821,13 @@ return PortalVIDTOS; } /** * 表单的数据对象转换为显示对象 * @param portalVIDTO * @return */ @Override public PortalVI portalVIDTOO2VI(PortalVIDTO portalVIDTO) { public PortalVI portalVIDTOO2VI(PortalVIDTO portalVIDTO) { PortalVI portalVI = new PortalVI(); portalVI.id = portalVIDTO.getId(); portalVI.typeFlag = portalVIDTO.getTypeFlag(); 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.corba.common.PLException; import com.vci.corba.framework.data.UserInfo; import com.vci.corba.omd.btm.BizType; import com.vci.corba.omd.data.*; import com.vci.corba.omd.lcm.LifeCycle; import com.vci.dto.*; @@ -176,7 +177,8 @@ queryFieldList.addAll(linkTypeVO.getAttributes().stream().map(OsLinkTypeAttributeVO::getId).collect(Collectors.toList())); queryFieldList.addAll(WebLoServiceImpl.LO_BASE_FIELD_MAP.values()); }else{ btmTypeVO = btmService.getBtmById(dataGridQuery.getBtmname()); //btmTypeVO = btmService.getBtmById(dataGridQuery.getBtmname()); btmTypeVO = btmService.getBtmByName(dataGridQuery.getBtmname()); queryFieldList.addAll(btmTypeVO.getAttributes().stream().map(OsBtmTypeAttributeVO::getId).collect(Collectors.toList())); queryFieldList.addAll(WebBoServiceImpl.BO_BASE_FIELD_MAP.values()); } @@ -197,8 +199,9 @@ } return loService.queryGridByScheme(linkTypeDataQuery); }else { return boService.queryGridByScheme(queryTemplate, DataGrid dataGrid = boService.queryGridByScheme(queryTemplate, dataGridQuery.getConditionMap(), replaceMap, dataGridQuery.getPageHelper(), queryFieldList.stream().collect(Collectors.toList())); return dataGrid; } //生命周期在其中查询后就会处理 //枚举也会被处理了 @@ -212,7 +215,7 @@ * @throws VciBaseException 查询出错的时候会抛出异常 */ @Override public UIFormDataVO getDataForForm(UIFormQuery formQuery) throws VciBaseException { public UIFormDataVO getDataForForm(UIFormQuery formQuery) throws VciBaseException, PLException { VciBaseUtil.alertNotNull(formQuery,"表单的查询对象",formQuery.getBtmname(),"业务类型的信息",formQuery.getOid(),"业务数据的主键",formQuery.getFormDefineId(),"表单的定义编号"); UIFormDefineVO formDefineVO = uiEngineService.getFormById(formQuery.getBtmname(),formQuery.getFormDefineId()); String queryTemplate = !CollectionUtils.isEmpty(formQuery.getSourceData())?formQuery.getSourceData().getOrDefault("querytemplate",formDefineVO.getQueryTemplateName()):formDefineVO.getQueryTemplateName(); @@ -242,7 +245,7 @@ queryFieldList.addAll(linkTypeVO.getAttributes().stream().map(OsLinkTypeAttributeVO::getId).collect(Collectors.toList())); queryFieldList.addAll(WebLoServiceImpl.LO_BASE_FIELD_MAP.values()); }else{ btmTypeVO = btmService.getBtmById(formQuery.getBtmname()); btmTypeVO = btmService.getBtmByName(formQuery.getBtmname()); queryFieldList.addAll(btmTypeVO.getAttributes().stream().map(OsBtmTypeAttributeVO::getId).collect(Collectors.toList())); } queryFieldList.add("creator_name"); @@ -1054,7 +1057,7 @@ * @throws VciBaseException 保存出错的时候会抛出异常 */ @Override public BaseResult<Map<String, Object>> addSave(FormDataDTO formDataDTO) throws VciBaseException { public BaseResult<Map<String, Object>> addSave(FormDataDTO formDataDTO) throws VciBaseException, PLException { //首先判断对象是否为空 VciBaseUtil.alertNotNull(formDataDTO,"添加的数据对象",formDataDTO.getBtmname(),"业务类型的名称",formDataDTO.getFormDefineId(),"表单定义的编号"); UIFormDefineVO formDefineVO = uiEngineService.getFormById(formDataDTO.getBtmname(), formDataDTO.getFormDefineId()); @@ -1110,7 +1113,7 @@ * @param newVersion 新版次 * @return 执行的结果 */ private BaseResult<BusinessObject> wrapperCbo(FormDataDTO formDataDTO,UIFormDefineVO formDefineVO,boolean editFlag,boolean newRevision,boolean newVersion){ private BaseResult<BusinessObject> wrapperCbo(FormDataDTO formDataDTO,UIFormDefineVO formDefineVO,boolean editFlag,boolean newRevision,boolean newVersion) throws PLException { //扩展属性的值 Map<String, String> data = formDataDTO.getData(); Map<String,String> dataLow = new HashMap<>(); @@ -1319,7 +1322,7 @@ * @throws VciBaseException 保存出错的时候会抛出异常 */ @Override public BaseResult<String> batchAddSave(FormDataDTOList formDataDTOList) throws VciBaseException { public BaseResult<String> batchAddSave(FormDataDTOList formDataDTOList) throws VciBaseException, PLException { VciBaseUtil.alertNotNull(formDataDTOList,"要添加的数据",formDataDTOList.getFormDataDTOS(),"要添加的数据"); //首先判断对象是否为空 FormDataDTO firstFormDataDTO = formDataDTOList.getFormDataDTOS().stream().findFirst().get(); @@ -1389,7 +1392,7 @@ * @throws VciBaseException 保存出错的时候会抛出异常 */ @Override public BaseResult<Map<String, Object>> editSave(FormDataDTO formDataDTO) throws VciBaseException { public BaseResult<Map<String, Object>> editSave(FormDataDTO formDataDTO) throws VciBaseException, PLException { //首先判断对象是否为空 VciBaseUtil.alertNotNull(formDataDTO,"修改的数据对象",formDataDTO.getBtmname(),"业务类型的名称",formDataDTO.getFormDefineId(),"表单定义的编号"); UIFormDefineVO formDefineVO = uiEngineService.getFormById(formDataDTO.getBtmname(), formDataDTO.getFormDefineId()); @@ -1493,7 +1496,7 @@ * @throws VciBaseException 保存出错的时候会抛出异常 */ @Override public BaseResult<String> batchEditSave(FormDataDTOList formDataDTOList) throws VciBaseException { public BaseResult<String> batchEditSave(FormDataDTOList formDataDTOList) throws VciBaseException, PLException { VciBaseUtil.alertNotNull(formDataDTOList,"要修改的数据",formDataDTOList.getFormDataDTOS(),"要修改的数据"); //首先判断对象是否为空 FormDataDTO firstFormDataDTO = formDataDTOList.getFormDataDTOS().stream().findFirst().get(); @@ -1550,7 +1553,7 @@ * @throws VciBaseException 数据被引用的时候会抛出异常 */ @Override public BaseResult batchDelete(DeleteDataDTO deleteDataDTO) throws VciBaseException { public BaseResult batchDelete(DeleteDataDTO deleteDataDTO) throws VciBaseException, PLException { VciBaseUtil.alertNotNull(deleteDataDTO,"数据传输对象",deleteDataDTO.getDataList(),"数据传输对象"); String btmName = deleteDataDTO.getDataList().get(0).getBtmname(); List<String> oidList = deleteDataDTO.getDataList().stream().map(BaseModelDTO::getOid).collect(Collectors.toList()); @@ -1558,7 +1561,7 @@ List<BusinessObject> cbo = null; if(deleteDataDTO.isCascade()){ //级联删除 OsBtmTypeVO btmTypeVO = btmService.getBtmById(btmName); OsBtmTypeVO btmTypeVO = btmService.getBtmByName(btmName); OsBtmTypeAttributeVO parentAttributeVO = btmTypeVO.getAttributes().stream().filter(s -> s.getReferBtmTypeId().equalsIgnoreCase(btmName)).findFirst().orElseGet(null); if(parentAttributeVO != null){ //页面分页不能显示超过1000 @@ -1639,7 +1642,7 @@ * @throws VciBaseException 参数为空,必输项缺失 */ @Override public BaseResult<String> linkAddSave(FormLinkDataDTO formLinkDataDTO) throws VciBaseException { public BaseResult<String> linkAddSave(FormLinkDataDTO formLinkDataDTO) throws VciBaseException, PLException { //首先判断对象是否为空 VciBaseUtil.alertNotNull(formLinkDataDTO,"添加的数据对象",formLinkDataDTO.getLinkType(),"链接类型的名称",formLinkDataDTO.getFormDefineId(),"表单定义的编号"); if(formLinkDataDTO.getData() ==null){ @@ -1815,7 +1818,7 @@ * @param boData to的数据 * @return 包含的对象 */ private BaseResult<BusinessObject> wrapperToCbo(FormLinkDataDTO formLinkDataDTO,UIFormDefineVO formDefineVO,String toOid,String toBtmName,Map<String,String> boData){ private BaseResult<BusinessObject> wrapperToCbo(FormLinkDataDTO formLinkDataDTO,UIFormDefineVO formDefineVO,String toOid,String toBtmName,Map<String,String> boData) throws PLException { Map<String,String> dataLow = new HashMap<>(); boData.forEach((key,value)->{ dataLow.put(key.toLowerCase(),value); @@ -1935,14 +1938,15 @@ * @param newVersion 是否升版次 * @return cbo对象 */ public BusinessObject createOrGetCbo(Map<String,String> dataLowMap,Map<String,String> baseDataMap,boolean editFlag,boolean newRevision,boolean newVersion){ public BusinessObject createOrGetCbo(Map<String,String> dataLowMap,Map<String,String> baseDataMap,boolean editFlag,boolean newRevision,boolean newVersion) throws PLException { String btmName = baseDataMap.get("btmname"); String oid = baseDataMap.get("oid"); // BusinessObject cbo = new BusinessObject(); BusinessObject cbo = new BusinessObject(); String copyfromversion = baseDataMap.get("copyfromversion"); OsBtmTypeVO btmTypeVO = btmService.getBtmById(btmName); List<String> attributeList = btmTypeVO.getAttributes().stream().map(attribute -> attribute.getId()).collect(Collectors.toList()); //OsBtmTypeVO btmTypeVO = btmService.getBtmById(btmName); OsBtmTypeVO btmTypeVO = btmService.getBtmByName(btmName); //List<String> attributeList = btmTypeVO.getAttributes().stream().map(attribute -> attribute.getId()).collect(Collectors.toList()); if(editFlag || newRevision || newVersion){ try { cbo = platformClientUtil.getBOFService().readBusinessObject(editFlag?oid:copyfromversion,btmName); @@ -2038,6 +2042,7 @@ if(StringUtils.isBlank(cbo.btName)){ cbo.btName = btmTypeVO.getId(); } if(btmTypeVO.isRevisionFlag()){ //要管理版本 if(btmTypeVO.isInputRevisionFlag() && StringUtils.isNotBlank(baseDataMap.getOrDefault("revisionvalue",""))){ @@ -2077,7 +2082,16 @@ // } // } setValueToCbo(dataLowMap,baseDataMap,cbo,editFlag); // cbo.setName(dataLowMap.get("name")); //TODO:默认属性需要放在cbo外层 if(StringUtils.isNotBlank(baseDataMap.getOrDefault("id",""))){ cbo.id = baseDataMap.getOrDefault("id",""); } if(StringUtils.isNotBlank(baseDataMap.getOrDefault("name",""))){ cbo.name = baseDataMap.getOrDefault("name",""); } if(StringUtils.isNotBlank(baseDataMap.getOrDefault("description",""))){ cbo.description = baseDataMap.getOrDefault("description",""); } return cbo; } @@ -2141,7 +2155,7 @@ * @throws VciBaseException 参数为空,必输项缺失 */ @Override public BaseResult linkEditSave(FormLinkDataDTO formLinkDataDTO) throws VciBaseException { public BaseResult linkEditSave(FormLinkDataDTO formLinkDataDTO) throws VciBaseException, PLException { VciBaseUtil.alertNotNull(formLinkDataDTO,"修改的数据对象",formLinkDataDTO.getLinkType(),"链接类型的名称", formLinkDataDTO.getFormDefineId(),"表单定义的编号",formLinkDataDTO.getOid(),"主键", formLinkDataDTO.getFoid(),"from端主键",formLinkDataDTO.getToid(),"to端主键"); @@ -2328,10 +2342,10 @@ * @return 列表数据 */ @Override public DataGrid referDataGrid(ReferConfigVO referConfigVO, PageHelper pageHelper) { public DataGrid referDataGrid(ReferConfigVO referConfigVO, PageHelper pageHelper) throws PLException { checkReferConfig(referConfigVO); //使用业务类型查询 OsBtmTypeVO btmById = btmService.getBtmById(referConfigVO.getReferBo()); OsBtmTypeVO btmById = btmService.getBtmByName(referConfigVO.getReferBo()); if(referConfigVO.getConditionMap() == null){ referConfigVO.setConditionMap(new HashMap<>()); } Source/plt-web/plt-web-parent/plt-web/src/main/resources/menuConfig.json
@@ -10,6 +10,7 @@ "parentId": "VCIBaseTreeNode", "code": "systemManagmentNode", "alias": "system", "category": "0", "meta": { "keepAlive": false }, @@ -25,6 +26,7 @@ "parentId": "VCIBaseTreeNode", "code": "modelManagmentNode", "alias": "model", "category": "0", "meta": { "keepAlive": false }, @@ -40,6 +42,7 @@ "parentId": "VCIBaseTreeNode", "code": "operateNode", "alias": "operate", "category": "0", "meta": { "keepAlive": false }, @@ -55,6 +58,7 @@ "parentId": "VCIBaseTreeNode", "code": "sysOptionNode", "alias": "sysOption", "category": "0", "meta": { "keepAlive": false }, @@ -70,6 +74,7 @@ "parentId": "VCIBaseTreeNode", "code": "sysMonitorNode", "alias": "sysMonitor", "category": "0", "meta": { "keepAlive": false }, @@ -83,6 +88,7 @@ "parentId": "systemManagmentNode", "code": "rootNode", "alias": "root", "category": "0", "meta": { "keepAlive": false }, @@ -99,6 +105,7 @@ "parentId": "VCIBaseTreeNode", "code": "systemManagmentNode", "alias": "system", "category": "0", "meta": { "keepAlive": false }, @@ -115,6 +122,7 @@ "parentId": "VCIBaseTreeNode", "code": "modelManagmentNode", "alias": "model", "category": "0", "meta": { "keepAlive": false }, @@ -131,6 +139,7 @@ "parentId": "VCIBaseTreeNode", "code": "operateNode", "alias": "operate", "category": "0", "meta": { "keepAlive": false },