zhouli 9 months ago
parent
commit
a64b06371c

+ 31 - 0
doc/New 2.txt

@@ -0,0 +1,31 @@
+set @yearAndMonth='2025';
+set @tenantId = '882990';
+
+SELECT
+        xm.*, tmp.xm_stage,tmp.gov_bonus,
+				IFNULL((SELECT COUNT(DISTINCT unicode) FROM kd_xm_technician xt where xt.xm_id = xm.xm_id GROUP BY xt.year_and_month ORDER BY xt.year_and_month desc  limit 1),0) as technicianCount
+FROM 
+(
+    SELECT
+        xm.id as xm_id,xm.tenant_id, 
+        COALESCE( (SELECT bgrz.BGHDZ FROM kd_xm_bgrz bgrz WHERE bgrz.XM_ID = xm.id AND bgrz.ZDMC = 'XMMC' AND DATE_FORMAT(bgrz.BGSXSJ,'%Y') <= @yearAndMonth ORDER BY bgrz.BGSXSJ DESC LIMIT 1),XMMC) AS XMMC,
+				xm.XMLY,xm.XMKZXS as kzxs,xm.YQCGXS as cgxs,xm.XMJSJJMB as jsjjmb,
+				xm.XMKSSJ as kssj,
+        COALESCE( (SELECT bgrz.BGHDZ FROM kd_xm_bgrz bgrz WHERE bgrz.XM_ID = xm.id AND bgrz.ZDMC = 'XMJSSJ' AND DATE_FORMAT(bgrz.BGSXSJ,'%Y') <=  @yearAndMonth ORDER BY bgrz.BGSXSJ DESC LIMIT 1),XMJSSJ) AS jssj
+    FROM kd_xm xm
+) xm
+LEFT JOIN kd_107_1 tmp on tmp.xm_id = xm.xm_id and tmp.year_and_month = @yearAndMonth
+WHERE xm.tenant_id = @tenantId and left(xm.jssj,4) >= @yearAndMonth 
+
+
+
+
+
+
+				
+				
+				
+				
+				
+
+        

+ 3 - 0
kd-service-api/kd-scientific-api/src/main/java/org/sky/scientific/pojo/vo/A107_1VO.java

@@ -13,6 +13,9 @@ import java.util.Date;
 @Schema(description = "107-1 企业研究开发项目情况")
 public class A107_1VO {
 
+	@Schema(description = "研发项目id")
+	private Long xmId;
+
 	@Schema(description = "研发项目名称")
 	private String xmmc;
 

+ 10 - 5
kd-service/kd-scientific/src/main/java/org/sky/scientific/service/impl/TechnicianServiceImpl.java

@@ -72,18 +72,23 @@ public class TechnicianServiceImpl extends BaseServiceImpl<TechnicianMapper, Tec
 		}
 		technician.setUnicode(unicode);
 		//根据年月和工号或身份证
+//		LambdaQueryWrapper<TechnicianEntity> wrapper = Wrappers.<TechnicianEntity>lambdaQuery()
+//			.eq(TechnicianEntity::getYearAndMonth, technician.getYearAndMonth())
+//			.eq(TechnicianEntity::getNumber, technician.getNumber())
+//			.eq(TechnicianEntity::getIdCard, technician.getIdCard());
 		LambdaQueryWrapper<TechnicianEntity> wrapper = Wrappers.<TechnicianEntity>lambdaQuery()
 			.eq(TechnicianEntity::getYearAndMonth, technician.getYearAndMonth())
-			.eq(TechnicianEntity::getNumber, technician.getNumber())
-			.eq(TechnicianEntity::getIdCard, technician.getIdCard());
+			.eq(TechnicianEntity::getUnicode, technician.getUnicode());
 		TechnicianEntity dbTechnician = baseMapper.selectOne(wrapper);
 		if (dbTechnician == null) {
 			//新增
 			return this.save(technician);
-		} else {
-			technician.setId(dbTechnician.getId());
-			return this.updateById(technician);
 		}
+//		else {
+//			technician.setId(dbTechnician.getId());
+//			return this.updateById(technician);
+//		}
+		return true;
 	}
 
 	@Override