|
|
@@ -16,12 +16,17 @@ import kd.bos.entity.datamodel.events.BeforeDeleteRowEventArgs;
|
|
|
import kd.bos.entity.datamodel.events.BeforeImportEntryEventArgs;
|
|
|
import kd.bos.entity.datamodel.events.ChangeData;
|
|
|
import kd.bos.entity.datamodel.events.PropertyChangedArgs;
|
|
|
+import kd.bos.entity.filter.CompareTypeEnum;
|
|
|
+import kd.bos.entity.filter.FilterValue;
|
|
|
+import kd.bos.entity.filter.SimpleFilterRow;
|
|
|
+import kd.bos.entity.property.entryfilter.EntryQueryParam;
|
|
|
import kd.bos.form.ConfirmCallBackListener;
|
|
|
import kd.bos.form.ConfirmTypes;
|
|
|
import kd.bos.form.IClientViewProxy;
|
|
|
import kd.bos.form.MessageBoxOptions;
|
|
|
import kd.bos.form.MessageBoxResult;
|
|
|
import kd.bos.form.container.Wizard;
|
|
|
+import kd.bos.form.control.Control;
|
|
|
import kd.bos.form.control.EntryGrid;
|
|
|
import kd.bos.form.control.Steps;
|
|
|
import kd.bos.form.control.events.StepEvent;
|
|
|
@@ -37,6 +42,7 @@ import kd.bos.orm.query.QCP;
|
|
|
import kd.bos.orm.query.QFilter;
|
|
|
import kd.bos.servicehelper.BusinessDataServiceHelper;
|
|
|
import kd.bos.servicehelper.QueryServiceHelper;
|
|
|
+import kd.hdtc.hrcc.common.enums.FileImportSubTaskDealStatusEnum;
|
|
|
import kd.hr.hbp.business.servicehelper.HRQueryEntityHelper;
|
|
|
import nckd.jxccl.base.common.constant.FormConstant;
|
|
|
import nckd.jxccl.base.common.constant.QueryConstant;
|
|
|
@@ -102,6 +108,9 @@ public class PerfRankMgmtFormPlugin extends AbstractFormPlugin implements Wizard
|
|
|
setStepStatus(1,Steps.PROCESS);
|
|
|
|
|
|
importResultStep();
|
|
|
+
|
|
|
+ //步骤为:导入考核结果时只显示参与排名的人员
|
|
|
+ applyRankingFilter(true);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -477,7 +486,7 @@ public class PerfRankMgmtFormPlugin extends AbstractFormPlugin implements Wizard
|
|
|
|
|
|
private void importResultStep() {
|
|
|
this.getModel().setValue(PerfRankMgmtConstant.NCKD_STEP,1);
|
|
|
- this.getView().setVisible(false, FormConstant.NUMBER_KEY, PerfRankMgmtConstant.NCKD_GETRANKLIST);
|
|
|
+ this.getView().setVisible(false, FormConstant.NUMBER_KEY, PerfRankMgmtConstant.NCKD_GETRANKLIST,"nckd_advconbaritemap2","nckd_advconbaritemap3");
|
|
|
this.getView().setVisible(true, PerfRankMgmtConstant.NCKD_TOPRANKS, PerfRankMgmtConstant.NCKD_ALLOWANCERANKS, PerfRankMgmtConstant.NCKD_FAILS, PerfRankMgmtConstant.NCKD_BASICS, PerfRankMgmtConstant.NCKD_EXCELLENTS, "nckd_advconbaritemap6","nckd_advconbaritemap");
|
|
|
DynamicObjectCollection entryEntity = this.getModel().getEntryEntity(PerfRankMgmtConstant.NCKD_PERFRANKMGMTENTRY);
|
|
|
for (int i = 0; i < entryEntity.size(); i++) {
|
|
|
@@ -487,7 +496,7 @@ public class PerfRankMgmtFormPlugin extends AbstractFormPlugin implements Wizard
|
|
|
|
|
|
private void generatePersonList() {
|
|
|
this.getModel().setValue(PerfRankMgmtConstant.NCKD_STEP,0);
|
|
|
- this.getView().setVisible(true, FormConstant.NUMBER_KEY, PerfRankMgmtConstant.NCKD_GETRANKLIST);
|
|
|
+ this.getView().setVisible(true, FormConstant.NUMBER_KEY, PerfRankMgmtConstant.NCKD_GETRANKLIST,"nckd_advconbaritemap2","nckd_advconbaritemap3");
|
|
|
this.getView().setVisible(false, PerfRankMgmtConstant.NCKD_TOPRANKS, PerfRankMgmtConstant.NCKD_ALLOWANCERANKS, PerfRankMgmtConstant.NCKD_FAILS, PerfRankMgmtConstant.NCKD_BASICS, PerfRankMgmtConstant.NCKD_EXCELLENTS, "nckd_advconbaritemap6","nckd_advconbaritemap");
|
|
|
DynamicObjectCollection entryEntity = this.getModel().getEntryEntity(PerfRankMgmtConstant.NCKD_PERFRANKMGMTENTRY);
|
|
|
for (int i = 0; i < entryEntity.size(); i++) {
|
|
|
@@ -724,6 +733,10 @@ public class PerfRankMgmtFormPlugin extends AbstractFormPlugin implements Wizard
|
|
|
generatePersonList();
|
|
|
setStepStatus(0, Steps.PROCESS);
|
|
|
this.getView().updateView(PerfRankMgmtConstant.NCKD_PERFRANKMGMTENTRY);
|
|
|
+
|
|
|
+ //步骤为:导入考核结果时只显示参与排名的人员
|
|
|
+ applyRankingFilter(false);
|
|
|
+
|
|
|
}else{
|
|
|
//校验有没有保存
|
|
|
DynamicObject dataEntity = this.getModel().getDataEntity();
|
|
|
@@ -734,9 +747,43 @@ public class PerfRankMgmtFormPlugin extends AbstractFormPlugin implements Wizard
|
|
|
importResultStep();
|
|
|
setStepStatus(1, Steps.PROCESS);
|
|
|
this.getView().updateView(PerfRankMgmtConstant.NCKD_PERFRANKMGMTENTRY);
|
|
|
+
|
|
|
+ //步骤为:导入考核结果时只显示参与排名的人员
|
|
|
+ applyRankingFilter(true);
|
|
|
}
|
|
|
}
|
|
|
this.getView().updateView(PerfRankMgmtConstant.NCKD_STEP);
|
|
|
|
|
|
}
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 应用排名过滤器
|
|
|
+ * @param onlyRankingParticipants 是否只显示参与排名的人员
|
|
|
+ */
|
|
|
+ private void applyRankingFilter(boolean onlyRankingParticipants) {
|
|
|
+ EntryGrid entryGrid = this.getView().getControl(PerfRankMgmtConstant.NCKD_PERFRANKMGMTENTRY);
|
|
|
+ List<SimpleFilterRow> filterRowList = new ArrayList<>(1);
|
|
|
+ List<FilterValue> value = new ArrayList<>();
|
|
|
+
|
|
|
+ if (onlyRankingParticipants) {
|
|
|
+ // 只显示参与排名的人员 (nckd_isranking = 1)
|
|
|
+ FilterValue rankingValue = new FilterValue();
|
|
|
+ rankingValue.setValue("1");
|
|
|
+ value.add(rankingValue);
|
|
|
+ } else {
|
|
|
+ // 显示参与和不参与排名的人员 (nckd_isranking in (0,1))
|
|
|
+ FilterValue notRankingValue = new FilterValue();
|
|
|
+ notRankingValue.setValue("0");
|
|
|
+ value.add(notRankingValue);
|
|
|
+
|
|
|
+ FilterValue rankingValue = new FilterValue();
|
|
|
+ rankingValue.setValue("1");
|
|
|
+ value.add(rankingValue);
|
|
|
+ }
|
|
|
+
|
|
|
+ filterRowList.add(new SimpleFilterRow("(", CompareTypeEnum.IN.getId(), "nckd_isranking", ")", "", value));
|
|
|
+ //分录过滤
|
|
|
+ entryGrid.getGridDataByDefaultFilterRow(filterRowList);
|
|
|
+ }
|
|
|
+
|
|
|
}
|