Просмотр исходного кода

fix(performance): 解决人员任职信息缺失时的警告处理

- 添加日志记录功能用于跟踪人员任职信息缺失情况
- 增加对人员任职信息为空的判断和警告日志
- 引入荣誉学生助手类用于相关业务处理
- 优化代码结构添加必要的日志工厂依赖
wyc 6 дней назад
Родитель
Сommit
20efcc4846

+ 7 - 0
code/hr/nckd-jxccl-hr/src/main/java/nckd/jxccl/hr/psms/plugin/operate/performance/PerfRankMgmtSaveOpPlugin.java

@@ -15,6 +15,8 @@ import kd.bos.entity.plugin.AddValidatorsEventArgs;
 import kd.bos.entity.plugin.PreparePropertysEventArgs;
 import kd.bos.entity.plugin.args.BeginOperationTransactionArgs;
 import kd.bos.entity.plugin.args.EndOperationTransactionArgs;
+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.servicehelper.BusinessDataServiceHelper;
@@ -30,6 +32,7 @@ import nckd.jxccl.base.common.utils.QueryFieldBuilder;
 import nckd.jxccl.base.common.utils.StrFormatter;
 import nckd.jxccl.base.hrpi.helper.EmpPosOrgRelHelper;
 import nckd.jxccl.base.orm.helper.QFilterCommonHelper;
+import nckd.jxccl.hr.hstu.business.helper.HonorStudentHelper;
 import nckd.jxccl.hr.psms.common.PerfRankMgmtConstant;
 import nckd.jxccl.hr.psms.common.PositionStructureConstant;
 import nckd.jxccl.hr.psms.plugin.operate.performance.validate.PerfRankMgmtSaveValidate;
@@ -60,6 +63,8 @@ import java.util.stream.Collectors;
 */
 public class PerfRankMgmtSaveOpPlugin extends AbstractOperationServicePlugIn implements Plugin {
 
+    private static final Log logger = LogFactory.getLog(PerfRankMgmtSaveOpPlugin.class);
+
     @Override
     public void onPreparePropertys(PreparePropertysEventArgs e) {
         e.getFieldKeys().addAll(this.billEntityType.getAllFields().keySet());
@@ -216,6 +221,8 @@ public class PerfRankMgmtSaveOpPlugin extends AbstractOperationServicePlugIn imp
                     //赋值组织
                     if(empPosOrg != null) {
                         entry.set(FormConstant.NCKD_DEP, empPosOrg.get(FormConstant.ADMINORG));
+                    }else{
+                        logger.warn("【{}】人员没有任职信息", person.getLong(FormConstant.ID_KEY));
                     }
                 }
                 if(entry.getDynamicObject(PositionStructureConstant.NCKD_POSITIONHR) == null){