From 852ccd15939833f9bae20e4a990c4acfdd6a9922 Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期五, 15 八月 2025 12:30:16 +0800
Subject: [PATCH] 增加勤哲分工表展示

---
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/producedivision/service/ProduceDivisionService.java |   45 ++++++++++++++++++++++++++++++++++++++++-----
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/producedivision/service/QinzheFgbService.java       |    8 ++++++++
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/producedivision/vo/ProduceDivisionVO.java           |    4 ++--
 3 files changed, 50 insertions(+), 7 deletions(-)

diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/producedivision/service/ProduceDivisionService.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/producedivision/service/ProduceDivisionService.java
index ea069c9..be1bb41 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/producedivision/service/ProduceDivisionService.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/producedivision/service/ProduceDivisionService.java
@@ -9,6 +9,7 @@
 import org.springblade.core.mp.support.Query;
 import org.springblade.core.tool.utils.BeanUtil;
 import org.springblade.mdm.basesetting.producedivision.entity.ProduceDivision;
+import org.springblade.mdm.basesetting.producedivision.entity.QinzheFgb;
 import org.springblade.mdm.basesetting.producedivision.mapper.ProduceDivisionMapper;
 import org.springblade.mdm.basesetting.producedivision.vo.DivisionExcel;
 import org.springblade.mdm.basesetting.producedivision.vo.ImportResult;
@@ -26,15 +27,19 @@
 public class ProduceDivisionService extends BizServiceImpl<ProduceDivisionMapper, ProduceDivision> {
 	@Autowired
 	private MdmUserService tUserService;
+	@Autowired
+	private QinzheFgbService qinzheFgbService;
+
 	/**
 	 * 鏂板鍒嗗伐琛�
 	 * @param vo
 	 */
 	@Transactional
 	public void saveDivision(ProduceDivisionVO vo){
-		if(drawingNoExists(vo.getDrawingNo(),null)){
+		/*
+		if(drawingNoExists(vo.getpro,null)){
 			throw new ServiceException("鍥惧彿宸插瓨鍦細"+vo.getDrawingNo());
-		}
+		}*/
 		ProduceDivision plan = new ProduceDivision();
 		BeanUtil.copyProperties(vo, plan);
 		this.save(plan);
@@ -46,11 +51,12 @@
 	 * @param excludeId 鎺掗櫎id
 	 * @return 鏄惁瀛樺湪
 	 */
+	/*
 	boolean drawingNoExists(String drawingNo,Long excludeId){
 		return this.lambdaQuery()
 			.eq(ProduceDivision::getDrawingNo, drawingNo)
 			.ne(excludeId!=null,ProduceDivision::getId,excludeId).count()>0;
-	}
+	}*/
 
 	/**
 	 * 淇敼鍒嗗伐琛�
@@ -61,9 +67,10 @@
 		if(vo.getId() == null){
 			throw new ServiceException("id涓嶈兘鏈┖");
 		}
+		/*
 		if(drawingNoExists(vo.getDrawingNo(),vo.getId())){
 			throw new ServiceException("鍥惧彿宸插瓨鍦細"+vo.getDrawingNo());
-		}
+		}*/
 
 		ProduceDivision plan = this.getById(vo.getId());
 
@@ -153,7 +160,7 @@
 			.eq(ProduceDivision::getCheckerId,division.getCheckerId()).eq(ProduceDivision::getSeniorId,division.getSeniorId())
 			.eq(ProduceDivision::getTeamLeaderId,division.getTeamLeaderId()).count()>0;
 	}
-
+	/*
 	public ProduceDivision getByDrawingNo(String drawingNo){
 		List<ProduceDivision> divs = lambdaQuery().eq(ProduceDivision::getDrawingNo, drawingNo).list();
 		if(divs.isEmpty()){
@@ -161,5 +168,33 @@
 		}else{
 			return divs.get(0);
 		}
+	}*/
+
+	/**
+	 * 鏍规嵁鍕ゅ摬闆朵欢鍙蜂簬涓荤缂栧埗鑾峰彇鍒嗗伐琛ㄦ暟鎹� 鍥惧彿->鍕ゅ摬鏁版嵁锛堢紪鍒讹級 ->  涓诲埗鍒嗗伐琛ㄦ暟鎹�
+	 *
+	 * @param drawingNo
+	 * @return
+	 */
+	public ProduceDivision getByDrawingNoWithQinzhe(String drawingNo){
+		QinzheFgb qinzheFgb = qinzheFgbService.getByLjh(drawingNo);
+		if(qinzheFgb == null){
+			throw new ServiceException("鏈壘鍒伴浂缁勪欢鍙�");
+		}
+
+		Long programmerId = tUserService.getUserIdByName(qinzheFgb.getZggy());
+		if(programmerId == null){
+			throw new ServiceException("鏍规嵁"+qinzheFgb.getZggy()+"鏈壘鍒板搴旂殑绯荤粺鐢ㄦ埛锛岃妫�鏌ョ敤鎴锋槸鍚﹀瓨鍦�");
+		}
+		ProduceDivision division = lambdaQuery().eq(ProduceDivision::getProgrammerId, programmerId).list().stream().findFirst().orElse(null);
+		if(division == null){
+			throw new ServiceException("涓诲埗鍒嗗伐琛ㄦ棤宸ヨ壓鍛�"+qinzheFgb.getZggy()+"瀵瑰簲鐨勬暟鎹�");
+		}
+		List<ProduceDivision> divs = lambdaQuery().eq(ProduceDivision::getDrawingNo, drawingNo).list();
+		if(divs.isEmpty()){
+			return null;
+		}else{
+			return divs.get(0);
+		}
 	}
 }
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/producedivision/service/QinzheFgbService.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/producedivision/service/QinzheFgbService.java
index 9b69b1c..bf8bd91 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/producedivision/service/QinzheFgbService.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/producedivision/service/QinzheFgbService.java
@@ -12,6 +12,14 @@
 
 @Service
 public class QinzheFgbService extends ServiceImpl<QinzheFgbMapper, QinzheFgb> {
+	/**
+	 * 鏍规嵁闆朵欢鍙疯幏鍙栨暟鎹�
+	 * @param ljh 闆朵欢鍙�
+	 * @return 鍒嗗伐琛ㄥ疄浣�,鎵句笉鍒拌繑鍥瀗ull
+	 */
+	public QinzheFgb getByLjh(String ljh) {
+		return lambdaQuery().eq(QinzheFgb::getLjh, ljh).list().stream().findFirst().orElse(null);
+	}
 
 	/**
      * 鏌ヨ鍒嗛〉
diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/producedivision/vo/ProduceDivisionVO.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/producedivision/vo/ProduceDivisionVO.java
index 9ecf5ba..c466534 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/producedivision/vo/ProduceDivisionVO.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/producedivision/vo/ProduceDivisionVO.java
@@ -10,8 +10,8 @@
 @Setter
 @Getter
 public class ProduceDivisionVO extends BaseVO {
-	@Schema(description = "闆剁粍浠跺彿/鍥惧彿")
-	private String drawingNo;
+	//@Schema(description = "闆剁粍浠跺彿/鍥惧彿")
+	//private String drawingNo;
 
 	@Schema(description = "涓撲笟缁勯暱id")
 	private Long teamLeaderId;

--
Gitblit v1.9.3