Ver código fonte

1.R20251021-2237提单,处理入职通用协作问题

Tyx 1 semana atrás
pai
commit
5261337822

+ 20 - 6
code/jyyy/nckd-jimin-jyyy-hr/src/main/java/nckd/jimin/jyyy/hr/hom/explugin/ActivityDomainServiceEx.java

@@ -2,21 +2,26 @@ package nckd.jimin.jyyy.hr.hom.explugin;
 
 
 import kd.bos.dataentity.entity.DynamicObject;
+import kd.bos.dataentity.entity.DynamicObjectCollection;
+import kd.bos.logging.Log;
+import kd.bos.logging.LogFactory;
 import kd.bos.orm.query.QCP;
 import kd.bos.orm.query.QFilter;
 import kd.hr.hbp.business.servicehelper.HRBaseServiceHelper;
 import kd.hr.hbp.common.constants.HRBaseConstants;
 import kd.sdk.hr.hom.business.activity.IActivityDomainService;
+import nckd.jimin.jyyy.hr.wtc.wtis.task.SyncPunchCardTask;
 
 import java.util.List;
+import java.util.stream.Collectors;
 
 /**
  * Tyx 2025-11-03
  * 协作活动埋点处理扩展类
  */
 public class ActivityDomainServiceEx implements IActivityDomainService {
-    private static HRBaseServiceHelper ACTIVIHANDLE_HELPER = new HRBaseServiceHelper("hom_activehandle");
-
+    private static HRBaseServiceHelper ACTIVIHANDLE_HELPER = new HRBaseServiceHelper("hom_activityoverview");
+    private static Log logger = LogFactory.getLog(ActivityDomainServiceEx.class);
     private static String SSAP_NUMBER = "ssap";
     @Override
     public void triggerTrdActivity(DynamicObject dynamicObject, DynamicObject dynamicObject1, Long aLong) {
@@ -25,13 +30,22 @@ public class ActivityDomainServiceEx implements IActivityDomainService {
 
     @Override
     public Long triggerTrdActivityNew(DynamicObject activityDy, DynamicObject onbrdbillDyn, Long instanceId) {
+        logger.info("-------- begin triggerTrdActivityNew -------- ");
         String activityNumber = activityDy.getString(HRBaseConstants.NUMBER);
         // 如果活动编码为宿舍安排编码ssap,则返回宿舍安排这个协作任务的主键ID;
         if (SSAP_NUMBER.equals(activityNumber)) {
-            QFilter filter = new QFilter("activity.id", QCP.equals, activityDy.getPkValue());
-            filter.and("onbrdid.id", QCP.equals, onbrdbillDyn.getPkValue());
-            DynamicObject dyn = ACTIVIHANDLE_HELPER.queryOne("entryid", filter);
-            return dyn.getLong("id");
+            logger.info("当前活动编码:{}", activityNumber);
+//            QFilter filter = new QFilter("activity.id", QCP.equals, activityDy.getPkValue());
+//            filter.and("onbrdid.id", QCP.equals, onbrdbillDyn.getPkValue());
+//            DynamicObject dyn = ACTIVIHANDLE_HELPER.queryOne("entryid", filter);
+//            return dyn.getLong("id");
+            QFilter filter = new QFilter("onbrd", QCP.equals,onbrdbillDyn.get("id"));
+            DynamicObject dynamicObject = ACTIVIHANDLE_HELPER.loadDynamicObject(filter);
+            DynamicObjectCollection entryentity = dynamicObject.getDynamicObjectCollection("entryentity");
+            List<Long> collect = entryentity.stream().filter(row -> row.get("activity.id").equals(activityDy.get("id"))).map(rowData -> rowData.getLong("id")).collect(Collectors.toList());
+            Long aLong = collect.get(0);
+            logger.info("当前查询通用协作ID:{}", aLong);
+            return aLong;
         }
         else {
             return null;