ソースを参照

1.offer管理自动切换到已申请页签
2.获取钉钉映射表优化,去除禁用用户
3.年度/临时招聘申请薪资范围逻辑优化

Tyx 1 週間 前
コミット
6cc30f36db

+ 49 - 0
code/jyyy/nckd-jimin-jyyy-hr/src/main/java/nckd/jimin/jyyy/hr/haos/task/DealOrgLongNameTask.java

@@ -0,0 +1,49 @@
+package nckd.jimin.jyyy.hr.haos.task;
+
+import kd.bos.context.RequestContext;
+import kd.bos.dataentity.entity.DynamicObject;
+import kd.bos.exception.KDException;
+import kd.bos.logging.Log;
+import kd.bos.logging.LogFactory;
+import kd.bos.orm.query.QCP;
+import kd.bos.orm.query.QFilter;
+import kd.bos.schedule.executor.AbstractTask;
+import kd.bos.servicehelper.operation.SaveServiceHelper;
+import kd.hr.hbp.business.servicehelper.HRBaseServiceHelper;
+import kd.sdk.plugin.Plugin;
+import nckd.jimin.jyyy.hr.haos.util.OrgUtils;
+
+import java.util.Arrays;
+import java.util.Date;
+import java.util.Map;
+import java.util.Set;
+import java.util.stream.Collectors;
+
+
+/**
+ * @author Tyx
+ * @date  2025/6/26
+ * 一次性后台任务,批量更新所有组织的长名称和长编码,nckd_longname和nckd_longnumber
+ */
+public class DealOrgLongNameTask extends AbstractTask implements Plugin {
+
+    private static final Log log = LogFactory.getLog(DealOrgLongNameTask.class);
+    private static String adminOrgDetail_entity = "haos_adminorgdetail";
+    @Override
+    public void execute(RequestContext requestContext, Map<String, Object> map) throws KDException {
+        log.info(" ------- 开始执行批量修改组织长名称/长编码方法 ------- ");
+        String selectProperties = "id,boid,number,name,structlongnumber,structnumber,nckd_longname,nckd_longnumber,bsed";
+        //QFilter filter = new QFilter("number", QCP.equals, "010102181");
+        DynamicObject[] orgDyns = new HRBaseServiceHelper(adminOrgDetail_entity).query(selectProperties, null);
+        log.info(" ------- 批量更新条数 : {} ------", orgDyns.length);
+        for (DynamicObject org : orgDyns) {
+            String structLongNumber = org.getString("structlongnumber");
+            Date bsed = org.getDate("bsed");
+            Set structLongNumberSet = Arrays.stream(structLongNumber.split("!")).
+                    collect(Collectors.toSet());
+            Map<String, Map<String, String>> structMap = OrgUtils.getStructNumberMap(structLongNumberSet, bsed);
+            OrgUtils.dealLongNameAndNumber(org, structMap);
+        }
+        SaveServiceHelper.update(orgDyns);
+    }
+}

+ 21 - 0
code/jyyy/nckd-jimin-jyyy-hr/src/main/java/nckd/jimin/jyyy/hr/tsc/tso/formplugin/web/offer/moka/MokaOfferTagListPluginEx.java

@@ -0,0 +1,21 @@
+package nckd.jimin.jyyy.hr.tsc.tso.formplugin.web.offer.moka;
+
+import kd.bos.form.container.Tab;
+import kd.hr.hbp.formplugin.web.HRDataBaseList;
+
+import java.util.EventObject;
+
+/**
+ * @author Tyx
+ * @date  2025/6/25
+ * Offer管理插件 自动切换到已申请
+ */
+public class MokaOfferTagListPluginEx extends HRDataBaseList {
+
+    @Override
+    public void afterBindData(EventObject e) {
+        super.afterBindData(e);
+        Tab tab = this.getControl("tabap");
+        tab.activeTab("hasapply");
+    }
+}

+ 6 - 4
code/jyyy/nckd-jimin-jyyy-hr/src/main/java/nckd/jimin/jyyy/hr/tsrsc/plugin/form/CasRecrApplyFormPlugin.java

@@ -447,10 +447,12 @@ public class CasRecrApplyFormPlugin extends AbstractBillPlugIn implements Before
         if(newValue instanceof Integer){
             // 最大值
             Integer nckdPayrange = (Integer)this.getModel().getValue("nckd_payrange",row);
-            int comparisonResult = nckdPayrange.compareTo( (Integer) newValue);
-            if(comparisonResult < 0){
-                this.getView().showErrorNotification("最高薪资不能低于最低薪资!");
-                this.getModel().setValue("nckd_payrangemin",oldValue,row);
+            if(nckdPayrange > 0) {
+                int comparisonResult = nckdPayrange.compareTo((Integer) newValue);
+                if (comparisonResult < 0) {
+                    this.getView().showErrorNotification("最高薪资不能低于最低薪资!");
+                    this.getModel().setValue("nckd_payrangemin", oldValue, row);
+                }
             }
         }
     }

+ 2 - 1
code/jyyy/nckd-jimin-jyyy-hr/src/main/java/nckd/jimin/jyyy/hr/wtc/wtis/util/DingTalkSyncUtil.java

@@ -134,7 +134,8 @@ public class DingTalkSyncUtil {
      */
     public static DynamicObjectCollection getMappingInfo() {
         QFilter filter = new QFilter("imtype.id", QCP.equals, 2L);
-        filter.and("user.isforbidden",QCP.equals,false);
+        //filter.and("user.isforbidden",QCP.equals,false);
+        filter.and("user.enable",QCP.equals, "1");
         String selectFields = "user.number,openid";
         return QueryServiceHelper.query(mapping_entity, selectFields, new QFilter[]{filter});
     }