From 9810791a41d381a10451f3e9770cfcfedf98e886 Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期五, 22 八月 2025 00:39:34 +0800
Subject: [PATCH] 增加首页搜索接口
---
blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/vo/MachineVO.java | 7 +++
blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/mapper/NcNodeMapper.java | 12 ++++++
blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/MachineService.java | 2 +
blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/mapper/NcNodeMapper.xml | 30 +++++++++++++++
blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/entity/Machine.java | 9 ++++
blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/vo/MachineSaveVO.java | 7 +++
blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/controller/NcNodeController.java | 8 ++--
blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcNodeService.java | 34 ++++++++++++++++
blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/excution/dispatch/NormalFinishDataHandler.java | 11 ++++-
9 files changed, 111 insertions(+), 9 deletions(-)
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/MachineService.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/MachineService.java
index a2eb155..0f9d47c 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/MachineService.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/MachineService.java
@@ -98,6 +98,8 @@
machine.setProgTempDir(vo.getProgTempDir());
machine.setStatus(vo.getStatus());
machine.setRemark(vo.getRemark());
+ machine.setSendDirExpiryHours(vo.getSendDirExpiryHours());
+ machine.setReceiveDirExpiryHours(vo.getReceiveDirExpiryHours());
return this.updateById(machine);
}
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/entity/Machine.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/entity/Machine.java
index a06fbd5..560accc 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/entity/Machine.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/entity/Machine.java
@@ -53,10 +53,17 @@
*/
private String progSendDir;
/**
+ * send鏂囦欢澶逛繚鎸佹椂闂� 灏忔椂
+ */
+ private Integer sendDirExpiryHours;
+ /**
* 绋嬪簭鍥炰紶鐩綍',
*/
private String progReceiveDir;
-
+ /**
+ * receive鏂囦欢澶逛繚鎸佹椂闂� 灏忔椂
+ */
+ private Integer receiveDirExpiryHours;
/**
* 绋嬪簭闀挎湡瀛樺偍鐩綍
*/
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/vo/MachineSaveVO.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/vo/MachineSaveVO.java
index d7e61ae..c1ee382 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/vo/MachineSaveVO.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/vo/MachineSaveVO.java
@@ -46,4 +46,11 @@
private String progTempDir;
@Schema(description = "澶囨敞")
private String remark;
+
+ @Schema(description = "send鏂囦欢澶逛繚鎸佹椂闂� 灏忔椂")
+ private Integer sendDirExpiryHours;
+
+
+ @Schema(description = "receive鏂囦欢澶逛繚鎸佹椂闂� 灏忔椂")
+ private Integer receiveDirExpiryHours;
}
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/vo/MachineVO.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/vo/MachineVO.java
index 4e659b0..3ca8785 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/vo/MachineVO.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/machine/vo/MachineVO.java
@@ -54,4 +54,11 @@
private String progTempDir;
@Schema(description = "澶囨敞")
private String remark;
+
+ @Schema(description = "send鏂囦欢澶逛繚鎸佹椂闂� 灏忔椂")
+ private Integer sendDirExpiryHours;
+
+
+ @Schema(description = "receive鏂囦欢澶逛繚鎸佹椂闂� 灏忔椂")
+ private Integer receiveDirExpiryHours;
}
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/excution/dispatch/NormalFinishDataHandler.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/excution/dispatch/NormalFinishDataHandler.java
index 1302a04..00a9793 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/excution/dispatch/NormalFinishDataHandler.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/excution/dispatch/NormalFinishDataHandler.java
@@ -49,10 +49,15 @@
//TODO 鍋忕鍗曪紝鍜屽凡缁忓浐鍖栫殑绋嬪簭锛屾病鏈夊鐞�,:宸茬粡澶勭悊娌℃湁楠岃瘉
NcNode packageNode;
- if(FlowContants.Y.equals(props.getHasCuredProgram()) && FlowContants.Y.equals(props.getCureProgramUseable())){
+ if(FlowContants.Y.equals(props.getHasCuredProgram())){
//鏈夊浐鍖栵紝涓旂▼搴忓彲鐢紝浠庡浐鍖栨爲鏌ヨ鑺傜偣.浣跨敤娴佺▼涓繚瀛樼殑鑺傜偣
//packageNode = ncNodeService.getLastEditionCuredProgramPackage(programPkgName,props.getProcessEdition());
- packageNode = ncNodeService.getById(props.getCuredNodeId());
+ if(FlowContants.Y.equals(props.getCureProgramUseable())) {
+ packageNode = ncNodeService.getById(props.getCuredNodeId());
+ }else{
+ //涓嶅彲鐢紝鍘诲浐鍖栨壘鏈�鏂拌妭鐐�
+ packageNode = ncNodeService.getLastEditionCuredProgramPackage(programPkgName,props.getProcessEdition());
+ }
}else if(Func.isNotBlank(props.getDeviation())){
//鏈夊亸绂诲崟
packageNode = ncNodeService.getLastEditionDeviationProgramPackage(programPkgName,props.getProcessEdition());
@@ -78,7 +83,7 @@
//鏈夊浐鍖栵紝绋嬪簭涓嶅彲鐢�
if(FlowContants.N.equals(progProperties.getCureProgramUseable())) {
//鍥哄寲绋嬪簭涓嶅彲鐢紝闇�瑕侀噸鏂板缓绔嬬▼搴忓寘鍚嶅拰鏂囦欢鑺傜偣;鍙敤鎯呭喌鍦ㄦ祦绋嬪鎵逛腑宸茬粡鍗囩骇杩囪妭鐐逛簡
- NcNode curedProgramPackage = ncNodeService.getById(Func.toLong(progProperties.getCuredNodeId()));
+ NcNode curedProgramPackage = ncNodeService.getById(progProperties.getCuredNodeId());
NcNode newCuredPkgNode = new NcNode();
BeanUtils.copyProperties(curedProgramPackage, newCuredPkgNode);
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/controller/NcNodeController.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/controller/NcNodeController.java
index e5ca25d..2026872 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/controller/NcNodeController.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/controller/NcNodeController.java
@@ -100,13 +100,13 @@
return R.data(list);
}
- @GetMapping("/search")
- @Operation(summary = "棣栭〉鎼滅储", description = "鎼滅储鎸囧畾闆剁粍浠跺彿")
- public R<List<Long>> search(NcNodeQueryVO queryVO) {
+ @GetMapping("/search-list2")
+ @Operation(summary = "娑夊瘑缃戦椤垫悳绱�", description = "鎼滅储鎸囧畾闆剁粍浠跺彿")
+ public R<List<NcNodeVO>> search(NcNodeQueryVO queryVO) {
if(Func.isEmpty(queryVO.getDrawingNo())){
return R.fail("璇疯緭鍏ラ浂缁勪欢鍙�");
}
- List<Long> list = ncNodeService.searchDrawing(queryVO);
+ List<NcNodeVO> list = ncNodeService.searchList2(queryVO);
return R.data(list);
}
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/mapper/NcNodeMapper.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/mapper/NcNodeMapper.java
index 14a7aab..7c8e5fc 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/mapper/NcNodeMapper.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/mapper/NcNodeMapper.java
@@ -21,8 +21,20 @@
*/
NcNode getLastProgramNode(String name);
+ /**
+ * 棣栭〉鎼滅储 鑰佺殑
+ * @param queryVO
+ * @return
+ */
List<NcNodeVO> searchList(NcNodeOldQueryVO queryVO);
+ /**
+ * 棣栭〉鎼滅储
+ * @param queryVO
+ * @return
+ */
+ List<NcNodeVO> searchList2(NcNodeQueryVO queryVO);
+
List<NcNodeVO> searchListInIds(List<Long> ids);
/**
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 9789a02..00c2a29 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
@@ -105,6 +105,36 @@
where n.is_deleted=0 and n.parent_id in (select id from mdm_nc_node where parent_id=#{parentNode.parentId}) and n.name=#{name}
</select>
+ <select id="searchList2" resultType="org.springblade.mdm.program.vo.NcNodeVO">
+ select <include refid="all_columns_n"/>,dt.dict_value as node_type_name,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 left join blade_user u on n.create_user=u.id
+ left join blade_dict_biz dt on n.node_type=dt.dict_key and dt.code='nc_node_type' and dt.is_deleted=0
+ <where>
+ n.is_deleted=0 and n.node_type='20' and n.name=#{drawingNo}
+ <if test="programStatus != null and programStatus != ''">
+ and
+ (
+ <if test='programStatus.contains("1")'>
+ n.parent_ids LIKE '0,1,%'
+ </if>
+ <if test='programStatus.contains("2")'>
+ or n.parent_ids LIKE '0,2,%'
+ </if>
+ <if test='programStatus.contains("2")'>
+ or n.parent_ids LIKE '0,3,%'
+ </if>
+ )
+ </if>
+ </where>
+
+
+ </select>
</mapper>
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcNodeService.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcNodeService.java
index ecca16d..2994db2 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcNodeService.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcNodeService.java
@@ -102,6 +102,7 @@
* @param queryVO
* @return
*/
+ /*
public List<Long> searchDrawing(NcNodeQueryVO queryVO) {
List<NcNode> nodes = lambdaQuery().eq(NcNode::getNodeType,NcNode.TYPE_DRAWING_NO)
.eq(NcNode::getIsLastEdition,1)
@@ -116,7 +117,7 @@
}).list();
return nodes.stream().map(NcNode::getId).toList();
- }
+ }*/
/**
* 棣栭〉鏍戞煡璇�
* @param queryVO
@@ -152,6 +153,37 @@
return rootVos;
}
+ /**
+ * 棣栭〉鎼滅储 鏂扮殑
+ * @param queryVO 鏌ヨ鍙傛暟
+ * @return
+ */
+ public List<NcNodeVO> searchList2(NcNodeQueryVO queryVO) {
+ //1.鏍规嵁闆剁粍浠跺彿鍜屽垱寤烘椂闂存煡璇㈠垵濮嬪垪琛�,鏌ヨ鐨勫師濮嬪垪琛紝闇�瑕乭asChild瀛楁锛屾墍浠ヤ娇鐢╩apper.xml
+ List<NcNodeVO> oriList = this.getBaseMapper().searchList2(queryVO);
+
+
+ List<NcNodeVO> allVos = new ArrayList<>();//宸茬粡鍔犲叆杩囩殑鑺傜偣锛岀敤浜庡幓閲�
+ List<NcNodeVO> rootVos = new ArrayList<>();
+
+ for(NcNodeVO vo : oriList){
+ allVos.add(vo);
+ //涓婄骇鍚勭骇鐨勮妭鐐�
+ List<NcNodeVO> parents = this.getBaseMapper().searchListInIds(Func.toLongList(vo.getParentIds()));
+
+ for(NcNodeVO pvo : parents){
+ if(pvo.getParentId() == 0L){
+ rootVos.add(pvo);
+ }
+ allVos.add(pvo);
+ }
+ }
+ for(NcNodeVO root : rootVos){
+ addNodeChildren(root, allVos);
+ }
+ return rootVos;
+ }
+
void addNodeChildren(NcNodeVO node, List<NcNodeVO> allNodes) {
for(NcNodeVO vo : allNodes){
if(Objects.equals(vo.getParentId(), node.getId())){
--
Gitblit v1.9.3