From ef4a26bca3552aed5865e5ef3ef2804b8509d31b Mon Sep 17 00:00:00 2001 From: yangys <y_ys79@sina.com> Date: 星期二, 08 七月 2025 13:57:06 +0800 Subject: [PATCH] 增加param调用接口 --- blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/vo/NcNodeVO.java | 2 blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/controller/MdmParamController.java | 47 +++++++ blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcProgramExportDNCService.java | 11 + blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/mapper/NcNodeMapper.xml | 7 blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/excution/StartDispatcher.java | 44 ++++-- blade-service/blade-mdm/pom.xml | 4 blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/MdmProgramImportService.java | 45 +++++++ blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcProgramExchangeService.java | 173 ++++++++++++++++++++++++++-- 8 files changed, 302 insertions(+), 31 deletions(-) diff --git a/blade-service/blade-mdm/pom.xml b/blade-service/blade-mdm/pom.xml index 9c621b1..1c880ef 100644 --- a/blade-service/blade-mdm/pom.xml +++ b/blade-service/blade-mdm/pom.xml @@ -44,6 +44,10 @@ </dependency> <dependency> <groupId>org.springblade</groupId> + <artifactId>blade-system-api</artifactId> + </dependency> + <dependency> + <groupId>org.springblade</groupId> <artifactId>blade-flow-api</artifactId> </dependency> <!-- 宸ヤ綔娴� --> diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/excution/StartDispatcher.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/excution/StartDispatcher.java index 675d536..49b4588 100644 --- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/excution/StartDispatcher.java +++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/excution/StartDispatcher.java @@ -1,6 +1,7 @@ package org.springblade.mdm.flow.excution; import io.swagger.v3.oas.annotations.media.Schema; +import lombok.AllArgsConstructor; import org.flowable.common.engine.impl.identity.Authentication; import org.flowable.engine.IdentityService; import org.flowable.engine.runtime.ProcessInstance; @@ -11,7 +12,9 @@ import org.springblade.flow.core.utils.TaskUtil; import org.springblade.mdm.flow.vo.TaskAssignVO; import org.springblade.mdm.program.entity.NcProgram; +import org.springblade.mdm.program.entity.ProcessProgRef; import org.springblade.mdm.program.service.NcProgramService; +import org.springblade.mdm.program.service.ProcessProgRefService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.flowable.engine.RuntimeService; @@ -19,20 +22,23 @@ import java.util.List; import java.util.Map; +@AllArgsConstructor @Service("startDispatcher") public class StartDispatcher { - @Autowired - private RuntimeService runtimeService; - @Autowired - private AutoAssignUsersService autoAssignUsersService; - @Autowired - private IdentityService identityService; + private final RuntimeService runtimeService; + private final AutoAssignUsersService autoAssignUsersService; - @Autowired - private NcProgramService ncProgramService; + private final IdentityService identityService; + private final ProcessProgRefService processProgRefService; + private final NcProgramService ncProgramService; + private static final String PROCESS_KEY = "dispatch"; + /** + * 鍚姩娲惧伐娴佺▼ + * @param startVO + */ public void start(TaskAssignVO startVO){ Map<String,Object> preAssignee = autoAssignUsersService.autoAssignUsers(startVO.getProducePlanId()); @@ -51,22 +57,27 @@ vars.put("partNoEdition",startVO.getPartNoEdition()); vars.put("planLockDays",startVO.getPlanLockDays()); vars.put("productModel",startVO.getProductModel()); - //闆剁粍浠朵唬鐮� - String partNo = generatePartNo(startVO); - vars.put("partNo",partNo); - List<NcProgram> curedNcProgram = ncProgramService.getCuredNcProgram(partNo,startVO.getMachineCode()); - //vars.put("curedNcProgram",curedNcProgram); + List<NcProgram> curedNcPrograms = ncProgramService.getCuredNcProgram(startVO.getPartNo(),startVO.getMachineCode()); //璁剧疆鏄惁鏈夊浐鍖栫▼搴忔爣璁� - vars.put("hasCuredProgram",!curedNcProgram.isEmpty() ? "Y":"N"); + vars.put("hasCuredProgram",!curedNcPrograms.isEmpty() ? "Y":"N"); + String businessKey = "0";//涓氬姟琛╧ey identityService.setAuthenticatedUserId(String.valueOf(AuthUtil.getUserId()));//璁剧疆娴佺▼鍙戣捣浜� ProcessInstance pinst = runtimeService.startProcessInstanceByKey(PROCESS_KEY,businessKey,vars); - int a=1; + //濡傛灉鏈夊凡鍥哄寲绋嬪簭锛屽垯灏嗙▼搴廼d鎻掑叆娴佺晠鍏宠仈琛� + for(NcProgram ncProgram : curedNcPrograms){ + ProcessProgRef ref = new ProcessProgRef(); + ref.setProcessInstanceId(pinst.getId()); + ref.setNcProgramId(ncProgram.getId()); + + processProgRefService.save(ref); + } + //log.info() } @@ -76,6 +87,7 @@ * @param startVO * @return */ + /* String generatePartNo(TaskAssignVO startVO){ //TODO 杩欎釜鏍煎紡鏈‘瀹氾紝闇�瑕佺‘璁� return String.format("%s-%s-%s-%s-%s-%s", @@ -85,5 +97,5 @@ startVO.getProcessName(), startVO.getCraftEdition(), startVO.getProcessEdition()); - } + }*/ } diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/controller/MdmParamController.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/controller/MdmParamController.java new file mode 100644 index 0000000..7f028d8 --- /dev/null +++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/controller/MdmParamController.java @@ -0,0 +1,47 @@ + +package org.springblade.mdm.program.controller; + +import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springblade.core.tenant.annotation.NonDS; +import org.springblade.core.tool.api.R; +import org.springblade.mdm.program.service.NcProgramExchangeService; +import org.springblade.mdm.program.vo.DncSendBackData; +import org.springblade.system.feign.ISysClient; +import org.springblade.system.feign.IUserClient; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; + +import java.util.List; + +/** + * 娴佺▼绠$悊鎺ュ彛 + * + * @author Chill + */ +@NonDS +@RestController +@RequestMapping("/system/param/") +@AllArgsConstructor +@Tag(name = "DNC瀵煎叆", description = "DNC瀵煎叆鎺ュ彛") +@Slf4j +public class MdmParamController { + private final ISysClient sysClient; + + @GetMapping("/getValue") + @ApiOperationSupport(order = 2) + @Operation(summary = "鑾峰彇鍙傛暟鍊�") + public R<String> detail(@Parameter(description = "鍙傛暟Key") @RequestParam String paramKey) { + try { + return sysClient.getParamValue(paramKey); + }catch (Exception e){ + log.error("鍏ュ簱閿欒",e); + return R.fail(e.getMessage()); + } + + } +} diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/mapper/NcNodeMapper.xml b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/mapper/NcNodeMapper.xml index 67157f3..19b09ce 100644 --- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/mapper/NcNodeMapper.xml +++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/mapper/NcNodeMapper.xml @@ -35,15 +35,16 @@ </select> <sql id="all_columns">id,tenant_id,name,parent_id,node_type,status,create_dept,is_deleted,create_time,create_user,update_time,update_user</sql> + <sql id="all_columns_n">n.id,n.tenant_id,n.name,n.parent_id,n.node_type,n.status,n.create_dept,n.is_deleted,n.create_time,n.create_user,n.update_time,n.update_user</sql> <select id="lazyList" resultType="org.springblade.mdm.program.vo.NcNodeVO"> - select <include refid="all_columns"/>,( + select <include refid="all_columns_n"/>,u.name create_user_name,( SELECT CASE WHEN count(1) > 0 THEN 1 ELSE 0 END FROM mdm_nc_node WHERE - parent_id = n.id and is_deleted = 0 - ) AS "has_children" from mdm_nc_node n where is_deleted=0 and parent_id=#{parentId} + parent_id = id and is_deleted = 0 + ) AS "has_children" from mdm_nc_node n left join blade_user u on n.create_user=u.id where n.is_deleted=0 and n.parent_id=#{parentId} </select> diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/MdmProgramImportService.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/MdmProgramImportService.java index bf389c3..1f285df 100644 --- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/MdmProgramImportService.java +++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/MdmProgramImportService.java @@ -9,6 +9,7 @@ import org.apache.commons.compress.archivers.zip.ZipArchiveEntry; import org.apache.commons.compress.archivers.zip.ZipFile; import org.apache.commons.compress.utils.SeekableInMemoryByteChannel; +import org.springblade.core.mp.base.BizEntity; import org.springblade.core.mp.base.BizServiceImpl; import org.springblade.core.oss.OssTemplate; import org.springblade.core.oss.model.BladeFile; @@ -17,6 +18,8 @@ import org.springblade.core.tool.utils.FileUtil; import org.springblade.core.tool.utils.Func; import org.springblade.core.tool.utils.IoUtil; +import org.springblade.mdm.flow.entity.ApproveRecord; +import org.springblade.mdm.flow.service.ApproveRecordService; import org.springblade.mdm.flow.service.CureFlowService; import org.springblade.mdm.program.entity.NcNode; import org.springblade.mdm.program.entity.NcProgram; @@ -48,6 +51,7 @@ private final CureFlowService cureFlowService; private final NcProgramService ncProgramService; private final NcNodeService ncNodeService; + private final ApproveRecordService approveRecordService; private final BladeRedis bladeRedis; private final OssTemplate ossTemplate; @@ -214,6 +218,8 @@ List<NcNode> nodeList = new ArrayList<>(); List<NcProgram> progList = new ArrayList<>(); + List<ApproveRecord> recordList = new ArrayList<>(); + try (SeekableInMemoryByteChannel channel = new SeekableInMemoryByteChannel(bytes); ZipFile zipFile = new ZipFile(channel)) { @@ -249,6 +255,8 @@ d.setPartNo(jsonObject.getString("partNo")); d.setProcessEdition(jsonObject.getString("processEdition")); + setBaseProperties(d,jsonObject); + progList.add(d); } @@ -271,7 +279,27 @@ node.setParentIds(jsonObject.getString("parentIds")); node.setIsCured(jsonObject.getInteger("isCured")); + setBaseProperties(node,jsonObject); + nodeList.add(node); + } + } + }else if(entryName.equals(NcProgramExportDNCService.APPROVE_RECORD_JSON_FILE)){ + try (InputStream insJson = zipFile.getInputStream(entry)) { + String jsonStr = IoUtil.readToString(insJson); + JSONArray jsonArray = JSONArray.parseArray(jsonStr); + for (int i = 0; i < jsonArray.size(); i++) { + JSONObject jsonObject = jsonArray.getJSONObject(i); + ApproveRecord record = new ApproveRecord(); + record.setId(jsonObject.getLong("id")); + record.setNcProgramId(jsonObject.getLong("ncProgramId")); + record.setUserId(jsonObject.getLong("userId")); + record.setUserNickname(jsonObject.getString("userNickname")); + record.setOperateResult(jsonObject.getString("operateResult")); + record.setOperateTime(jsonObject.getDate("operateTime")); + setBaseProperties(record,jsonObject); + + recordList.add(record); } } } @@ -327,5 +355,22 @@ } } + for(ApproveRecord record:recordList) { + ApproveRecord recordTemp = this.approveRecordService.getById(record.getId()); + if (recordTemp == null) { + approveRecordService.save(record); + } else { + approveRecordService.updateById(record); + } + } + + } + + void setBaseProperties(BizEntity entity,JSONObject jsonObject){ + entity.setCreateTime(jsonObject.getDate("createTime")); + entity.setUpdateTime(jsonObject.getDate("updateTime")); + entity.setStatus(jsonObject.getInteger("status")); + entity.setCreateUser(jsonObject.getLong("createUser")); + entity.setUpdateUser(jsonObject.getLong("updateUser")); } } diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcProgramExchangeService.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcProgramExchangeService.java index 7ead897..e2e2241 100644 --- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcProgramExchangeService.java +++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcProgramExchangeService.java @@ -12,13 +12,20 @@ import org.apache.commons.compress.archivers.zip.ZipFile; import org.apache.commons.compress.utils.SeekableInMemoryByteChannel; import org.apache.commons.io.IOUtils; +import org.springblade.core.mp.base.BizEntity; import org.springblade.core.mp.base.BizServiceImpl; import org.springblade.core.mp.support.Condition; import org.springblade.core.mp.support.Query; +import org.springblade.core.oss.OssTemplate; +import org.springblade.core.oss.model.BladeFile; +import org.springblade.core.redis.cache.BladeRedis; +import org.springblade.core.secure.utils.AuthUtil; import org.springblade.core.tool.utils.FileUtil; import org.springblade.core.tool.utils.Func; import org.springblade.core.tool.utils.IoUtil; +import org.springblade.mdm.flow.entity.ApproveRecord; import org.springblade.mdm.flow.service.CureFlowService; +import org.springblade.mdm.program.entity.NcNode; import org.springblade.mdm.program.entity.NcProgram; import org.springblade.mdm.program.entity.NcProgramExchange; import org.springblade.mdm.program.mapper.NcProgramExchangeMapper; @@ -32,6 +39,7 @@ import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; +import java.time.Duration; import java.time.LocalDateTime; import java.util.*; @@ -46,6 +54,13 @@ public class NcProgramExchangeService extends BizServiceImpl<NcProgramExchangeMapper, NcProgramExchange> { private final CureFlowService cureFlowService; private final NcProgramService ncProgramService; + private final NcNodeService ncNodeService; + private final OssTemplate ossTemplate; + private final BladeRedis bladeRedis; + + private String getFileKey(){ + return "dncexpfile-"+ AuthUtil.getUserId(); + } /** * dnc鍥炰紶鏂囦欢涓婁紶锛堣В鏋愬悗淇濆瓨鍏pload琛級 * @param file DNC鍥炰紶鏂囦欢 @@ -54,13 +69,15 @@ public List<DncSendBackData> dncSendBackUpload(MultipartFile file) { List<DncSendBackData> list; try { - //String fileName = file.getOriginalFilename(); + BladeFile bfile = ossTemplate.putFile(file);//涓婁紶锛屼緵鍚庣画鍏ュ簱浣跨敤 + //璁剧疆涓�涓紦瀛橈紝2灏忔椂杩囨湡 + bladeRedis.setEx(getFileKey(),bfile.getName(), Duration.ofHours(2)); + //InputStream zipFileInputStream = FileExchangeUtil.convertFileToZip(file.getInputStream()); InputStream zipFileInputStream = file.getInputStream();//test byte[] bytes = FileUtil.copyToByteArray(zipFileInputStream); list = parseDncZipFromByteArray(bytes); - } catch (IOException e) { log.error("涓婁紶dnc鍥炰紶鏂囦欢澶辫触",e); @@ -138,11 +155,6 @@ } } - System.out.println("鏂囦欢鍚�: " + entry.getName()); - System.out.println("澶у皬: " + entry.getSize()); - - // 璇诲彇鏂囦欢鍐呭鍒板瓧鑺傛暟缁� - ByteArrayOutputStream outputStream = new ByteArrayOutputStream(); } @@ -164,13 +176,13 @@ * @param ids id鍒楄〃閫楀彿鍒嗛殧 * @return */ - public void dncFileAccept(String ids) { + public void dncFileAccept(String ids) throws IOException { List<Long> idList = Func.toLongList(ids); - List<NcProgram> progList = ncProgramService.listByIds(idList); + // NcProgramExchange exchange; - //NcProgram program; - //NcNode programNode; - + String pkgFileName = bladeRedis.get(getFileKey()); + updateProgramData(pkgFileName,idList); + List<NcProgram> progList = ncProgramService.listByIds(idList); for(NcProgram prog:progList){ exchange = new NcProgramExchange(); exchange.setName(prog.getName()); @@ -182,6 +194,143 @@ } cureFlowService.startCure(progList); + } + void updateProgramData(String pkgFileName,List<Long> idList) throws IOException { + InputStream inputStream = this.ossTemplate.statFileStream(pkgFileName); + byte[] bytes = FileUtil.copyToByteArray(inputStream); + + List<NcNode> nodeList = new ArrayList<>(); + List<NcProgram> progList = new ArrayList<>(); + + try (SeekableInMemoryByteChannel channel = new SeekableInMemoryByteChannel(bytes); + ZipFile zipFile = new ZipFile(channel)) { + + ZipArchiveEntry entry; + Enumeration<ZipArchiveEntry> entries = zipFile.getEntries(); + while (entries.hasMoreElements()) { + entry = entries.nextElement(); + + String entryName = entry.getName(); + + if (entry.isDirectory()) { + continue; + } + if(entryName.equals(NcProgramExportDNCService.PROGRAM_JSON_FILE)){ + + try (InputStream insJson = zipFile.getInputStream(entry)) { + String jsonStr = IoUtil.readToString(insJson); + + JSONArray jsonArray = JSONArray.parseArray(jsonStr); + for(int i=0;i<jsonArray.size();i++){ + JSONObject jsonObject = jsonArray.getJSONObject(i); + NcProgram program = new NcProgram(); + program.setId(jsonObject.getLong("id")); + if(!idList.contains(program.getId())){//涓嶆槸閫夊畾鍏ュ簱鐨� + continue; + } + program.setName(jsonObject.getString("name")); + + program.setCode(jsonObject.getString("code")); + program.setDescription(jsonObject.getString("description")); + program.setCategory(jsonObject.getString("category")); + program.setBindNcNodeId(jsonObject.getLong("bindNcNodeId")); + program.setIsLastEdition(jsonObject.getInteger("isLastEdition")); + program.setIsLocked(jsonObject.getInteger("isLocked")); + program.setIsTest(jsonObject.getInteger("isTest")); + program.setMachineCode(jsonObject.getString("machineCode")); + program.setNcNodeId(jsonObject.getLong("ncNodeId")); + program.setPartNo(jsonObject.getString("partNo")); + program.setProcessEdition(jsonObject.getString("processEdition")); + + setBaseProperties(program,jsonObject); + + progList.add(program); + } + + } + }else if(entryName.equals(NcProgramExportDNCService.NODE_JSON_FILE)){ + try (InputStream insJson = zipFile.getInputStream(entry)) { + String jsonStr = IoUtil.readToString(insJson); + JSONArray jsonArray = JSONArray.parseArray(jsonStr); + for (int i = 0; i < jsonArray.size(); i++) { + JSONObject jsonObject = jsonArray.getJSONObject(i); + NcNode node = new NcNode(); + node.setId(jsonObject.getLong("id")); + node.setName(jsonObject.getString("name")); + node.setDescription(jsonObject.getString("description")); + node.setNodeType(jsonObject.getString("nodeType")); + node.setProcessName(jsonObject.getString("processName")); + node.setPartNo(jsonObject.getString("partNo")); + node.setMachineCode(jsonObject.getString("machineCode")); + node.setParentId(jsonObject.getLong("parentId")); + node.setParentIds(jsonObject.getString("parentIds")); + node.setIsCured(jsonObject.getInteger("isCured")); + + setBaseProperties(node,jsonObject); + + nodeList.add(node); + } + } + } + + } + + } + + //涓婁紶鍘嬬缉鍖呭唴鐨勭▼搴忓苟鏇存柊绋嬪簭鏂囦欢鍦板潃 + try (SeekableInMemoryByteChannel channel = new SeekableInMemoryByteChannel(bytes); + ZipFile zipFile = new ZipFile(channel)) { + + ZipArchiveEntry entry; + Enumeration<ZipArchiveEntry> entries = zipFile.getEntries(); + while (entries.hasMoreElements()) { + entry = entries.nextElement(); + + String entryName = entry.getName(); + + if (!entry.isDirectory() && !NcProgramExportDNCService.isDataFile(entryName)) { + + for(NcProgram prog:progList){ + if(prog.getName().equals(entryName)){ + try (InputStream ncFileStream = zipFile.getInputStream(entry)) { + BladeFile bfile = this.ossTemplate.putFile(prog.getName(),ncFileStream); + prog.setOssName(bfile.getName()); + prog.setUrl(bfile.getLink()); + } + break; + } + } + + } + } + } + + for(NcNode node:nodeList){ + NcNode nodeTemp = this.ncNodeService.getById(node.getId()); + if(nodeTemp == null){ + ncNodeService.save(node); + }else{ + ncNodeService.updateById(node); + } + } + + for(NcProgram prog:progList){ + NcProgram ncTemp = ncProgramService.getById(prog.getId()); + if(ncTemp == null){ + ncProgramService.save(prog); + }else{ + ncProgramService.updateById(prog); + } + } + + } + + void setBaseProperties(BizEntity entity, JSONObject jsonObject){ + entity.setCreateTime(jsonObject.getDate("createTime")); + entity.setUpdateTime(jsonObject.getDate("updateTime")); + entity.setStatus(jsonObject.getInteger("status")); + entity.setCreateUser(jsonObject.getLong("createUser")); + entity.setUpdateUser(jsonObject.getLong("updateUser")); } } diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcProgramExportDNCService.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcProgramExportDNCService.java index 30e65b2..378e5cd 100644 --- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcProgramExportDNCService.java +++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcProgramExportDNCService.java @@ -46,6 +46,7 @@ @Service @AllArgsConstructor public class NcProgramExportDNCService extends BizServiceImpl<NcProgramExchangeMapper, NcProgramExchange> { + private final NcProgramService progService; private final NcProgramApprovedService approvedService; private final ApproveRecordService approveRecordService; @@ -54,6 +55,16 @@ public static final String PROGRAM_JSON_FILE = "exp_mdm_nc_program.json"; public static final String NODE_JSON_FILE = "exp_mdm_nc_node.json"; + public static final String APPROVE_RECORD_JSON_FILE = "exp_mdm_approve_record.json"; + + /** + * 鏄惁鍘嬬缉鍖呭唴鐨勬暟鎹枃浠� + * @param filename 鏂囦欢鍚嶇О + * @return + */ + public static boolean isDataFile(String filename){ + return StringUtils.equals(filename, PROGRAM_JSON_FILE) || StringUtils.equals(filename, NODE_JSON_FILE) || StringUtils.equals(filename, APPROVE_RECORD_JSON_FILE); + } /** * 鍒嗛〉鏌ヨ * @param query 鏌ヨ鍙傛暟 diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/vo/NcNodeVO.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/vo/NcNodeVO.java index 38418c9..9317ef7 100644 --- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/vo/NcNodeVO.java +++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/vo/NcNodeVO.java @@ -22,4 +22,6 @@ private String description; @Schema(description = "澶囨敞") private String remark; + @Schema(description = "鍒涘缓鐢ㄦ埛鍚嶇О") + private String createUserName; } -- Gitblit v1.9.3