From 270aceade15ec4cb7715131055b53cec4ecb7d4e Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期五, 19 九月 2025 18:13:21 +0800
Subject: [PATCH] 增加现场编制查询列表

---
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/vo/ProgramOnMachineVO.java                       |   46 +++++++++++++++
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/vo/TaskAssignVO.java                                |    2 
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/controller/ProgramOnMachineImportController.java |   17 ++++-
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/vo/ProgramOnMachineRecordQueryVO.java            |   25 ++++++++
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/entity/ProgramOnMachine.java                     |    4 +
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/controller/ProgramOnMachineExportController.java    |    3 
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/mapper/ProgramOnMachineMapper.java               |   12 +++
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/mapper/ProgramOnMachineMapper.xml                |   19 ++++++
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/vo/ProgramOnMachineExcel.java                       |    2 
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/ProgramOnMachineExportService.java          |   16 -----
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/ProgramOnMachineService.java             |   26 +++++++-
 11 files changed, 145 insertions(+), 27 deletions(-)

diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/controller/ProgramOnMachineExportController.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/controller/ProgramOnMachineExportController.java
index ea72a31..d852426 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/controller/ProgramOnMachineExportController.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/controller/ProgramOnMachineExportController.java
@@ -66,9 +66,10 @@
 			excel.setProcessEdition(Func.toStr(vars.get(FlowVariableConstant.PROCESS_EDITION)));
 			excel.setMachineCode(Func.toStr(vars.get(FlowVariableConstant.MACHINE_CODE)));
 			excel.setProcessInstanceId(record.getProcessInstanceId());
+			excel.setDeviation(Func.toStr(record.getVariables().get(FlowVariableConstant.DEVIATION)));
 			list.add(excel);
 		});
-		ExcelUtil.export(response, "鐜板満缂栧埗璁板綍" + DateUtil.time(), "鏈哄簥鏁版嵁琛�", list, ProgramOnMachineExcel.class);
+		ExcelUtil.export(response, "鐜板満缂栧埗璁板綍" + DateUtil.time(), "鐜板満缂栧埗璁板綍", list, ProgramOnMachineExcel.class);
 
 	}
 }
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/ProgramOnMachineExportService.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/ProgramOnMachineExportService.java
index 62435a6..f7b635f 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/ProgramOnMachineExportService.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/ProgramOnMachineExportService.java
@@ -8,8 +8,6 @@
 import org.flowable.engine.history.HistoricProcessInstanceQuery;
 import org.springblade.core.tool.utils.DateUtil;
 import org.springblade.core.tool.utils.Func;
-import org.springblade.mdm.basesetting.machine.service.MachineService;
-import org.springblade.mdm.commons.service.ParamService;
 import org.springblade.mdm.flow.constants.FlowConstant;
 import org.springblade.mdm.flow.constants.FlowVariableConstant;
 import org.springblade.mdm.flow.vo.FlowVO;
@@ -28,8 +26,6 @@
 public class ProgramOnMachineExportService {
 
 	private final HistoryService historyService;
-	private final ParamService paramService;
-	private final MachineService machineService;
 	/**
 	 *
 	 * @param page 鍒嗛〉淇℃伅
@@ -42,18 +38,7 @@
 			//.finished() // 鍙煡璇㈠凡瀹屾垚鐨勬祦绋�.unfinished() // 鏌ヨ鏈畬鎴愮殑娴佺▼
 		query.variableNotExists(FlowVariableConstant.EXCEPTION);//闈炲紓甯告祦绋�
 		query.variableValueEquals(FlowVariableConstant.PROGRAM_ON_MACHINE, FlowConstant.Y);//閫夋嫨鐜板満缂栧埗鐨�
-		/*
-		//杞﹀簥鎴栬�呴�夋嫨鐜板満缂栧埗鐨勭▼搴�
-		String turnVal = paramService.turninngValue();
-		List<Machine> machines = machineService.lambdaQuery().eq(Machine::getMachineSpec,turnVal).eq(Machine::getStatus,Machine.STATUS_ENABLE).list();
-		List<String> turnMachineCodes = machines.stream().map(Machine::getCode).toList();
-		query.or();
-		for(String mCode : turnMachineCodes){
-			query.variableValueEquals(FlowVariableContants.MACHINE_CODE, mCode);
-		}
 
-		query.endOr();
-		*/
 		if(queryVO.getEndTimeBegin()!=null) {
 			query.finishedAfter(DateUtil.toDate(queryVO.getEndTimeBegin()));
 		}
@@ -82,7 +67,6 @@
 
 			vo.setProcessCreateTime(processInstance.getStartTime());
 			vo.setHistoryTaskEndTime(processInstance.getEndTime());
-
 
 			//vo.setFile(getFileString(processInstance.getId()));
 			records.add(vo);
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/vo/ProgramOnMachineExcel.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/vo/ProgramOnMachineExcel.java
index 63a2aa6..e602b3b 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/vo/ProgramOnMachineExcel.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/vo/ProgramOnMachineExcel.java
@@ -20,6 +20,8 @@
 	private String processNo;
 	@ExcelProperty("宸ュ簭鐗堟")
 	private String processEdition;
+	@ExcelProperty("涓存椂鏇存敼鍗�")
+	private String deviation;
 
 	@ColumnWidth(20)
 	@ExcelProperty("鏈哄簥缂栧彿")
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/vo/TaskAssignVO.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/vo/TaskAssignVO.java
index cf5e743..b7ff1e0 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/vo/TaskAssignVO.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/vo/TaskAssignVO.java
@@ -40,7 +40,7 @@
 	@Schema(description = "璁″垝寮�宸ユ椂闂�")
 	private LocalDate planStartTime;
 
-	@Schema(description = "鍋忕鍗曞彿")
+	@Schema(description = "涓存椂鏇存敼鍗�")
 	private String deviation;
 	@Schema(description = "鏄惁涓存椂娴佺▼锛屽��:Y/N")
 	private String isTempFlow;
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/controller/ProgramOnMachineImportController.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/controller/ProgramOnMachineImportController.java
index d6eae27..5883b76 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/controller/ProgramOnMachineImportController.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/controller/ProgramOnMachineImportController.java
@@ -1,6 +1,7 @@
 
 package org.springblade.mdm.program.controller;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.tags.Tag;
@@ -10,13 +11,12 @@
 import org.springblade.core.excel.util.ExcelUtil;
 import org.springblade.core.tenant.annotation.NonDS;
 import org.springblade.core.tool.api.R;
+import org.springblade.mdm.flow.vo.ProgramOnMachineExcel;
+import org.springblade.mdm.flow.vo.ProgramOnMachineQueryVO;
 import org.springblade.mdm.program.service.MdmProgramImportService;
 import org.springblade.mdm.program.service.ProgramOnMachineService;
-import org.springblade.mdm.program.vo.MdmProgramImportVO;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.annotation.RestController;
+import org.springblade.mdm.program.vo.*;
+import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
 
 import java.util.List;
@@ -59,4 +59,11 @@
 		}
 	}
 
+	@Operation(summary = "宸ユ帶缃戜笅鍦虹紪绋嬭褰曞垎椤垫煡璇�", description = "宸ユ帶缃戜笅鍦虹紪绋嬭褰曞垎椤垫煡璇�")
+	@GetMapping("/program-on-machine-page")
+	public R<IPage<ProgramOnMachineVO>> page(ProgramOnMachineRecordQueryVO queryVO) {
+
+		return R.data(programOnMachineService.pageQuery(queryVO));
+	}
+
 }
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/entity/ProgramOnMachine.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/entity/ProgramOnMachine.java
index 54eb036..e57d6da 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/entity/ProgramOnMachine.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/entity/ProgramOnMachine.java
@@ -41,6 +41,10 @@
 	private String processNo;
 
 	/**
+	 * 涓存椂鏇存敼鍗�
+	 */
+	private String deviation;
+	/**
 	 * 娴佺▼瀹炰緥id
 	 */
 	private String processInstanceId;
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/mapper/ProgramOnMachineMapper.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/mapper/ProgramOnMachineMapper.java
index 9a4f7d3..3c45026 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/mapper/ProgramOnMachineMapper.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/mapper/ProgramOnMachineMapper.java
@@ -1,9 +1,19 @@
 package org.springblade.mdm.program.mapper;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.apache.ibatis.annotations.Param;
 import org.springblade.core.mp.mapper.BladeMapper;
 import org.springblade.mdm.program.entity.ProgramOnMachine;
+import org.springblade.mdm.program.vo.ProgramOnMachineRecordQueryVO;
+import org.springblade.mdm.program.vo.ProgramOnMachineVO;
 
 public interface ProgramOnMachineMapper extends BladeMapper<ProgramOnMachine> {
 
-
+	/**
+	 * 瀵煎叆璁板綍鍒嗛〉鏌ヨ
+	 * @param page 鍒嗛〉淇℃伅
+	 * @param queryVO 鏌ヨ鏍戞嵁
+	 * @return 鍒嗛〉鏁版嵁
+	 */
+    IPage<ProgramOnMachineVO> pageQuery(@Param("page")IPage<Object> page, @Param("query")ProgramOnMachineRecordQueryVO queryVO);
 }
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/mapper/ProgramOnMachineMapper.xml b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/mapper/ProgramOnMachineMapper.xml
index 5c124e5..0c530c4 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/mapper/ProgramOnMachineMapper.xml
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/mapper/ProgramOnMachineMapper.xml
@@ -3,4 +3,23 @@
 <mapper namespace="org.springblade.mdm.program.mapper.ProgramOnMachineMapper">
 
 
+    <select id="pageQuery" resultType="org.springblade.mdm.program.vo.ProgramOnMachineVO">
+        select p.id,p.drawing_no,p.process_no,p.process_edition,p.deviation,p.machine_code,p.process_instance_id,p.create_time,u.name create_user_name
+        from mdm_program_on_machine p left join blade_user u on p.create_user=u.id
+        <where>
+            p.is_deleted=0
+
+            <if test="query.drawingNo!=null and query.drawingNo!=''">
+                <bind name="dno" value="'%'+query.drawingNo+'%'"/>
+                and p.drawing_no like #{dno}
+            </if>
+            <if test="query.createTimeBegin!=null">
+                and p.create_time &gt;= #{query.createTimeBegin}
+            </if>
+            <if test="query.createTimeEnd!=null">
+                and p.create_time &lt;= #{query.createTimeEnd}
+            </if>
+        </where>
+        order by p.create_time desc;
+    </select>
 </mapper>
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/ProgramOnMachineService.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/ProgramOnMachineService.java
index ddc42ca..ffd7826 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/ProgramOnMachineService.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/ProgramOnMachineService.java
@@ -1,17 +1,19 @@
 
 package org.springblade.mdm.program.service;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import lombok.AllArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.springblade.core.excel.util.ExcelUtil;
 import org.springblade.core.mp.base.BizServiceImpl;
+import org.springblade.core.mp.support.Condition;
 import org.springblade.core.tool.utils.BeanUtil;
-import org.springblade.mdm.basesetting.machine.service.MachineService;
-import org.springblade.mdm.commons.service.ParamService;
 
 import org.springblade.mdm.flow.vo.ProgramOnMachineExcel;
 import org.springblade.mdm.program.entity.ProgramOnMachine;
 import org.springblade.mdm.program.mapper.ProgramOnMachineMapper;
+import org.springblade.mdm.program.vo.ProgramOnMachineRecordQueryVO;
+import org.springblade.mdm.program.vo.ProgramOnMachineVO;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.multipart.MultipartFile;
@@ -19,7 +21,7 @@
 import java.util.*;
 
 /**
- * DNC鍥炰紶鏂囦欢澶勭悊鏈嶅姟
+ * 鐜板満缂栫▼璁板綍澶勭悊蹇�
  *
  * @author yangys
  */
@@ -43,6 +45,10 @@
 		return list.size();
 	}
 
+	/**
+	 * 鎵归噺淇濆瓨
+	 * @param list
+	 */
 	void batchSaveData(List<ProgramOnMachine> list) {
 		for (ProgramOnMachine progOnMachine : list) {
 			if(!existsByProcessInstanceId(progOnMachine.getProcessInstanceId())){
@@ -51,7 +57,21 @@
 		}
 	}
 
+	/**
+	 * 鏍规嵁娴佺▼瀹炰緥id鍒ゅ畾鏄惁瀛樺湪
+	 * @param processInstanceId 娴佺▼瀹炰緥id
+	 * @return 鏄惁瀛樺湪
+	 */
 	boolean existsByProcessInstanceId(String processInstanceId){
 		return this.lambdaQuery().eq(ProgramOnMachine::getProcessInstanceId,processInstanceId).count() > 0;
 	}
+
+	/**
+	 * 鐜板満缂栫▼瀵煎叆璁板綍鏌ヨ
+	 * @param queryVO 鏌ヨ鏍戞嵁
+	 * @return 鍒嗛〉鏍戞嵁
+	 */
+	public IPage<ProgramOnMachineVO> pageQuery(ProgramOnMachineRecordQueryVO queryVO) {
+		return baseMapper.pageQuery(Condition.getPage(queryVO),queryVO);//IPage<ProgramOnMachineExcel>,queryVO
+	}
 }
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/vo/ProgramOnMachineRecordQueryVO.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/vo/ProgramOnMachineRecordQueryVO.java
new file mode 100644
index 0000000..7cb8e72
--- /dev/null
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/vo/ProgramOnMachineRecordQueryVO.java
@@ -0,0 +1,25 @@
+package org.springblade.mdm.program.vo;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Getter;
+import lombok.Setter;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.tool.utils.DateUtil;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.time.LocalDate;
+
+
+@Schema(description = "鐜板満缂栬緫璁板綍鏌ヨ瀵硅薄锛堝伐鎺х綉锛�")
+@Setter
+@Getter
+public class ProgramOnMachineRecordQueryVO extends Query {
+	@Schema(description = "闆剁粍浠跺彿")
+	private String drawingNo;
+	@DateTimeFormat(pattern = DateUtil.PATTERN_DATE)
+	@Schema(description = "瀹℃壒瀹屾垚鏃堕棿寮�濮�")
+	private LocalDate createTimeBegin;
+	@DateTimeFormat(pattern = DateUtil.PATTERN_DATE)
+	@Schema(description = "瀹℃壒瀹屾垚鏃堕棿鎴")
+	private LocalDate createTimeEnd;
+}
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/vo/ProgramOnMachineVO.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/vo/ProgramOnMachineVO.java
new file mode 100644
index 0000000..0b9ccda
--- /dev/null
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/vo/ProgramOnMachineVO.java
@@ -0,0 +1,46 @@
+package org.springblade.mdm.program.vo;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Getter;
+import lombok.Setter;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.tool.utils.DateUtil;
+import org.springblade.mdm.commons.vo.BaseVO;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.time.LocalDate;
+
+
+@Schema(description = "鐜板満缂栬緫璁板綍鏌ヨ瀵硅薄锛堝伐鎺х綉锛�")
+@Setter
+@Getter
+public class ProgramOnMachineVO extends BaseVO {
+	@Schema(description = "闆剁粍浠跺彿")
+	private String drawingNo;
+
+	/**
+	 * 璁惧缂栧彿
+	 */
+	private String machineCode;
+
+
+	/**
+	 * 宸ュ簭鐗堟
+	 */
+	private String processEdition;
+
+
+	/**
+	 * 宸ュ簭鍙�
+	 */
+	private String processNo;
+
+	/**
+	 * 涓存椂鏇存敼鍗�
+	 */
+	private String deviation;
+	/**
+	 * 娴佺▼瀹炰緥id
+	 */
+	private String processInstanceId;
+}

--
Gitblit v1.9.3