| | |
| | | package com.vci.ubcs.code.service.impl; |
| | | |
| | | import com.alibaba.cloud.commons.lang.StringUtils; |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; |
| | |
| | | import com.vci.ubcs.code.dto.CodeBasicSecDTO; |
| | | import com.vci.ubcs.code.dto.CodeRuleDTO; |
| | | import com.vci.ubcs.code.entity.*; |
| | | import com.vci.ubcs.code.enumpack.CodeSecTypeEnum; |
| | | import com.vci.ubcs.code.lifecycle.CodeRuleLC; |
| | | import com.vci.ubcs.code.mapper.CodeRuleMapper; |
| | | import com.vci.ubcs.code.mapper.CodeSerialValueMapper; |
| | |
| | | import com.vci.ubcs.code.service.ICodeBasicSecService; |
| | | import com.vci.ubcs.code.service.ICodeClassifyService; |
| | | import com.vci.ubcs.code.service.ICodeRuleService; |
| | | import com.vci.ubcs.code.vo.pagemodel.CodeBasicSecVO; |
| | | import com.vci.ubcs.code.vo.pagemodel.CodeClassifyVO; |
| | | import com.vci.ubcs.code.vo.pagemodel.CodeRuleVO; |
| | | import com.vci.ubcs.code.wrapper.CodeClassifyWrapper; |
| | | import com.vci.ubcs.code.wrapper.CodeRuleWrapper; |
| | | import com.vci.ubcs.omd.cache.EnumCache; |
| | | import com.vci.ubcs.omd.enums.EnumEnum; |
| | | import com.vci.ubcs.starter.exception.VciBaseException; |
| | | import com.vci.ubcs.starter.revision.service.RevisionModelUtil; |
| | | import com.vci.ubcs.starter.util.DefaultAttrAssimtUtil; |
| | | import com.vci.ubcs.starter.util.UBCSCondition; |
| | | import com.vci.ubcs.starter.web.pagemodel.BladeQueryObject; |
| | | import com.vci.ubcs.starter.web.pagemodel.KeyValue; |
| | | import com.vci.ubcs.starter.web.pagemodel.*; |
| | | import com.vci.ubcs.starter.web.util.BeanUtilForVCI; |
| | | import com.vci.ubcs.starter.web.util.VciBaseUtil; |
| | | import com.vci.ubcs.starter.web.util.WebUtil; |
| | |
| | | //如果有lcstatus的类的话 |
| | | vo.setLcStatusText(CodeRuleLC.getTextByValue(vo.getLcStatus())); |
| | | if (hasSec) { |
| | | List<CodeBasicSecVO> codeBasicSecVOS = codeBasicSecService.listCodeBasicSecByRuleOid(vo.getOid()); |
| | | // 判断是否为引用码段,如果是应用码段的话,为了适配前端组件,这里要对表进行处理一下,按照以前的参照格式进行转换 |
| | | codeBasicSecVOS.stream().peek(item->{ |
| | | //引用码段 |
| | | if(item.getSecType().equals(CodeSecTypeEnum.CODE_REFER_SEC) && StringUtils.isNotEmpty(item.getReferConfig())){ |
| | | item.setReferConfig(referConfigTOUIUiTable(item)); |
| | | } |
| | | }); |
| | | //查询码段 |
| | | vo.setSecVOList(codeBasicSecService.listCodeBasicSecByRuleOid(vo.getOid())); |
| | | vo.setSecVOList(codeBasicSecVOS); |
| | | } |
| | | } |
| | | return vo; |
| | | } |
| | | |
| | | /** |
| | | * 将referconfig转换为JSON格式的UIFormReferVO |
| | | * @param item |
| | | * @return |
| | | */ |
| | | private String referConfigTOUIUiTable(CodeBasicSecVO item){ |
| | | // JSON格式的参照配置转换为对象 |
| | | CodeReferConfig codeReferConfig = JSONObject.parseObject(item.getReferConfig(), CodeReferConfig.class); |
| | | // 拷贝为以前的老对象 |
| | | UIFormReferVO uiFormReferVO = new UIFormReferVO(); |
| | | BeanUtil.copy(codeReferConfig,uiFormReferVO); |
| | | |
| | | // 表格的自定义定义 |
| | | UITableCustomDefineVO uiTableCustomDefineVO = new UITableCustomDefineVO(); |
| | | uiTableCustomDefineVO.setPage(new UITablePageVO(codeReferConfig.getLimit(),1)); |
| | | // 列表的列的信息转换 |
| | | List<UITableFieldVO> uiTableFieldVOs = new ArrayList<>(); |
| | | // 快速查询列 |
| | | List<UITableFieldVO> queryColumns = new ArrayList<>(); |
| | | codeReferConfig.getCodeShowFieldConfigs().stream().forEach(showField ->{ |
| | | UITableFieldVO uiTableFieldVO = new UITableFieldVO(); |
| | | BeanUtil.copy(showField,uiTableFieldVO); |
| | | uiTableFieldVOs.add(uiTableFieldVO); |
| | | if(showField.getIsQuery().equals("true")){ |
| | | queryColumns.add(uiTableFieldVO); |
| | | } |
| | | }); |
| | | // 显示的列 |
| | | uiTableCustomDefineVO.setCols(uiTableFieldVOs); |
| | | // 快速查询列 |
| | | uiTableCustomDefineVO.setQueryColumns(queryColumns); |
| | | // 筛选条件 |
| | | HashMap<String, String> whereMap = new HashMap<>(); |
| | | codeReferConfig.getCodeSrchCondConfigs().stream().forEach(srch->{ |
| | | whereMap.put(srch.getFilterValue()+"_"+srch.getFilterType(),srch.getFilterValue()); |
| | | }); |
| | | uiFormReferVO.setWhere(whereMap); |
| | | return JSONObject.toJSONString(uiFormReferVO); |
| | | } |
| | | |
| | | |
| | | |
| | | } |