|
@@ -11,6 +11,8 @@ import kd.bos.form.*;
|
|
|
import kd.bos.form.control.Control;
|
|
import kd.bos.form.control.Control;
|
|
|
import kd.bos.form.control.events.ItemClickEvent;
|
|
import kd.bos.form.control.events.ItemClickEvent;
|
|
|
import kd.bos.form.events.ClosedCallBackEvent;
|
|
import kd.bos.form.events.ClosedCallBackEvent;
|
|
|
|
|
+import kd.bos.form.events.MessageBoxClosedEvent;
|
|
|
|
|
+import kd.bos.form.events.PreOpenFormEventArgs;
|
|
|
import kd.bos.form.events.SetFilterEvent;
|
|
import kd.bos.form.events.SetFilterEvent;
|
|
|
import kd.bos.list.BillList;
|
|
import kd.bos.list.BillList;
|
|
|
import kd.bos.list.ListShowParameter;
|
|
import kd.bos.list.ListShowParameter;
|
|
@@ -31,10 +33,18 @@ import java.util.EventObject;
|
|
|
*/
|
|
*/
|
|
|
public class EvaluationObjectListPlugin extends AbstractListPlugin implements Plugin {
|
|
public class EvaluationObjectListPlugin extends AbstractListPlugin implements Plugin {
|
|
|
|
|
|
|
|
|
|
+ //评估对象表单标识
|
|
|
|
|
+ private static final String EVALUATION_OBJECT = "uzi9_evaluation_object";
|
|
|
|
|
+ //考核关系表单标识
|
|
|
|
|
+ private static final String ASSESSMENT_GX = "uzi9_assessment_gx";
|
|
|
|
|
+ //人员表单标识
|
|
|
|
|
+ private static final String BOS_USER = "bos_user";
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
@Override
|
|
@Override
|
|
|
public void setFilter(SetFilterEvent e) {
|
|
public void setFilter(SetFilterEvent e) {
|
|
|
super.setFilter(e);
|
|
super.setFilter(e);
|
|
|
- //添加过滤条件,只能看见当前考核下的评估对象
|
|
|
|
|
|
|
+ //添加过滤条件,只能看见当前考核下的评估对象(后期放开注解)
|
|
|
Object ActivityId = this.getView().getFormShowParameter().getCustomParam("ActivityId");
|
|
Object ActivityId = this.getView().getFormShowParameter().getCustomParam("ActivityId");
|
|
|
/*QFilter qFilter = new QFilter("uzi9_assessment_activity.id", QCP.equals, ActivityId);
|
|
/*QFilter qFilter = new QFilter("uzi9_assessment_activity.id", QCP.equals, ActivityId);
|
|
|
e.getQFilters().add(qFilter);*/
|
|
e.getQFilters().add(qFilter);*/
|
|
@@ -46,31 +56,15 @@ public class EvaluationObjectListPlugin extends AbstractListPlugin implements Pl
|
|
|
super.itemClick(evt);
|
|
super.itemClick(evt);
|
|
|
String itemKey = evt.getItemKey();
|
|
String itemKey = evt.getItemKey();
|
|
|
if (itemKey.equals("uzi9_new")) {
|
|
if (itemKey.equals("uzi9_new")) {
|
|
|
- ListShowParameter parameter = new ListShowParameter();
|
|
|
|
|
- //设置实体id
|
|
|
|
|
- parameter.setBillFormId("bos_user");
|
|
|
|
|
- //设置选择状态
|
|
|
|
|
- parameter.setLookUp(true);
|
|
|
|
|
- //设置展开
|
|
|
|
|
- parameter.getOpenStyle().setShowType(ShowType.Modal);
|
|
|
|
|
- //设置模版id
|
|
|
|
|
- parameter.setFormId("bos_usertreelistf7");
|
|
|
|
|
- //设置回调
|
|
|
|
|
- parameter.setCloseCallBack(new CloseCallBack(this, "add"));
|
|
|
|
|
- // 设置展开宽度,高度
|
|
|
|
|
- StyleCss styleCss = new StyleCss();
|
|
|
|
|
- styleCss.setWidth("800");
|
|
|
|
|
- styleCss.setHeight("500");
|
|
|
|
|
- parameter.getOpenStyle().setInlineStyleCss(styleCss);
|
|
|
|
|
- //跳转
|
|
|
|
|
- getView().showForm(parameter);
|
|
|
|
|
|
|
+ //跳转bos_user人员
|
|
|
|
|
+ bosUserJump("add");
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
//从其他考核活动进行新增
|
|
//从其他考核活动进行新增
|
|
|
if (itemKey.equals("uzi9_pull")) {
|
|
if (itemKey.equals("uzi9_pull")) {
|
|
|
ListShowParameter parameter = new ListShowParameter();
|
|
ListShowParameter parameter = new ListShowParameter();
|
|
|
//设置实体id
|
|
//设置实体id
|
|
|
- parameter.setBillFormId("bos_user");
|
|
|
|
|
|
|
+ parameter.setBillFormId(BOS_USER);
|
|
|
//设置选择状态
|
|
//设置选择状态
|
|
|
parameter.setLookUp(true);
|
|
parameter.setLookUp(true);
|
|
|
//设置展开
|
|
//设置展开
|
|
@@ -87,61 +81,148 @@ public class EvaluationObjectListPlugin extends AbstractListPlugin implements Pl
|
|
|
//跳转
|
|
//跳转
|
|
|
getView().showForm(parameter);
|
|
getView().showForm(parameter);
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
//删除效验
|
|
//删除效验
|
|
|
if (itemKey.equals("uzi9_delete")) {
|
|
if (itemKey.equals("uzi9_delete")) {
|
|
|
|
|
+ ConfirmCallBackListener callback = new ConfirmCallBackListener("delete", this);
|
|
|
|
|
+ this.getView().showConfirm("删除选中的评估对象后绩效目标及评估信息将无法恢复,是否确认删除?", MessageBoxOptions.YesNo, callback);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ //修改目标确认人
|
|
|
|
|
+ if (itemKey.equals("uzi9_confirm")) {
|
|
|
|
|
+ //获取选择行的id主键
|
|
|
|
|
+ BillList billList = this.getControl(AbstractListPlugin.BILLLISTID);
|
|
|
|
|
+ Object[] primaryKeyValues = billList.getSelectedRows().getPrimaryKeyValues();
|
|
|
|
|
+ if (primaryKeyValues.length == 0) {
|
|
|
|
|
+ this.getView().showTipNotification("请至少选择一行数据");
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+ if (primaryKeyValues.length != 1) {
|
|
|
|
|
+ this.getView().showTipNotification("请只选择一位人员进行目标确认人的修改");
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+ //跳转bos_user人员
|
|
|
|
|
+ bosUserJump("confirmModify");
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ //更新评估对象人员信息
|
|
|
|
|
+ if (itemKey.equals("uzi9_bos_update")) {
|
|
|
|
|
+ BillList billList = this.getControl(AbstractListPlugin.BILLLISTID);
|
|
|
|
|
+ Object[] primaryKeyValues = billList.getSelectedRows().getPrimaryKeyValues();
|
|
|
|
|
+ if (primaryKeyValues.length == 0) {
|
|
|
|
|
+ this.getView().showTipNotification("请选择需要更新的数据");
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+ //更新
|
|
|
|
|
+ bosUpdate(primaryKeyValues);
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
|
|
+ //导入目标确认人
|
|
|
|
|
+ if (itemKey.equals("uzi9_target")) {
|
|
|
|
|
+ ListShowParameter parameter = new ListShowParameter();
|
|
|
|
|
+ parameter.setFormId("bos_list");
|
|
|
|
|
+ parameter.setBillFormId("uzi9_assessment_gx");
|
|
|
|
|
+ parameter.getOpenStyle().setShowType(ShowType.Modal);
|
|
|
|
|
+ parameter.setCustomParam("importdata","importdata");
|
|
|
|
|
+ this.getView().showForm(parameter);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ //提示框回调
|
|
|
|
|
+ @Override
|
|
|
|
|
+ public void confirmCallBack(MessageBoxClosedEvent messageBoxClosedEvent) {
|
|
|
|
|
+ super.confirmCallBack(messageBoxClosedEvent);
|
|
|
|
|
+ //评估对象实际删除业务逻辑,顺带把考核关系也一起删除(未完)
|
|
|
|
|
+ if ("delete".equals(messageBoxClosedEvent.getCallBackId()) && messageBoxClosedEvent.getResult() == MessageBoxResult.Yes) {
|
|
|
|
|
+ //获取列表参数
|
|
|
|
|
+ BillList billList = this.getControl(AbstractListPlugin.BILLLISTID);
|
|
|
|
|
+ ListSelectedRowCollection selectedRows = billList.getSelectedRows();
|
|
|
|
|
+ Object[] primaryKeyValues = selectedRows.getPrimaryKeyValues();
|
|
|
|
|
+ if (primaryKeyValues.length <= 0) {
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+ int success = 0;
|
|
|
|
|
+ int failure = 0;
|
|
|
|
|
+ QFilter qFilter = new QFilter("id", QFilter.in, primaryKeyValues);
|
|
|
|
|
+ DynamicObject[] load = BusinessDataServiceHelper.load(EVALUATION_OBJECT, "id,uzi9_progress,uzi9_employeeid", new QFilter[]{qFilter});
|
|
|
|
|
+ for (DynamicObject dynamicObject : load) {
|
|
|
|
|
+ String progress = dynamicObject.get("uzi9_progress").toString();
|
|
|
|
|
+ if (progress.equals("1")) {
|
|
|
|
|
+ success++;
|
|
|
|
|
+ //删除评估对象
|
|
|
|
|
+ QFilter qFilterS = new QFilter("id", QFilter.equals, dynamicObject.get("id"));
|
|
|
|
|
+ DeleteServiceHelper.delete(EVALUATION_OBJECT, new QFilter[]{qFilterS});
|
|
|
|
|
+ //删除考核关系
|
|
|
|
|
+ QFilter qFilter2 = new QFilter("uzi9_employeeid", QFilter.equals, dynamicObject.get("uzi9_employeeid"));
|
|
|
|
|
+ DeleteServiceHelper.delete(ASSESSMENT_GX, new QFilter[]{qFilter2});
|
|
|
|
|
+ } else {
|
|
|
|
|
+ failure++;
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ this.getView().showMessage("成功删除个数:" + success + " --- 失败删除的个数:" + failure);
|
|
|
|
|
+ this.getView().showTipNotification("考核进度为“未开始”的评估对象才能删除。已完成考核评估对象不可以删除");
|
|
|
|
|
+ this.getView().updateView();
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
|
|
+ //动态表单回调
|
|
|
@Override
|
|
@Override
|
|
|
public void closedCallBack(ClosedCallBackEvent closedCallBackEvent) {
|
|
public void closedCallBack(ClosedCallBackEvent closedCallBackEvent) {
|
|
|
super.closedCallBack(closedCallBackEvent);
|
|
super.closedCallBack(closedCallBackEvent);
|
|
|
// 接收回调
|
|
// 接收回调
|
|
|
//获取回调标识
|
|
//获取回调标识
|
|
|
String actionId = closedCallBackEvent.getActionId();
|
|
String actionId = closedCallBackEvent.getActionId();
|
|
|
|
|
+
|
|
|
|
|
+ //新增评估对象
|
|
|
if (actionId.equals("add")) {
|
|
if (actionId.equals("add")) {
|
|
|
- if (closedCallBackEvent.getReturnData() instanceof ListSelectedRowCollection) {
|
|
|
|
|
- ListSelectedRowCollection selectCollections = (ListSelectedRowCollection) closedCallBackEvent.getReturnData();
|
|
|
|
|
- ArrayList list = new ArrayList();
|
|
|
|
|
- for (ListSelectedRow row : selectCollections) {
|
|
|
|
|
- // list存储id
|
|
|
|
|
- list.add(row.getPrimaryKeyValue());
|
|
|
|
|
- }
|
|
|
|
|
- // 构造QFilte
|
|
|
|
|
- QFilter qFilter = new QFilter("id", QFilter.equals, list.get(0));
|
|
|
|
|
- for (int i = 1; i < list.size(); i++) {
|
|
|
|
|
- qFilter = qFilter.or(new QFilter("id", QFilter.equals, list.get(i)));
|
|
|
|
|
- }
|
|
|
|
|
- // 将选中的id对应的数据从数据库加载出来
|
|
|
|
|
- DynamicObject[] load = BusinessDataServiceHelper.load("bos_user", "id,name,number,entryentity,startdate,entryentity.post,entryentity.dpt,entryentity.ispartjob", qFilter.toArray());
|
|
|
|
|
- for (DynamicObject dynamicObject : load) {
|
|
|
|
|
- //新增
|
|
|
|
|
- userAddOne(dynamicObject);
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ DynamicObject[] dynamicObjects = userCallback(closedCallBackEvent);
|
|
|
|
|
+ if (dynamicObjects == null){
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+ for (DynamicObject dynamicObject : dynamicObjects) {
|
|
|
|
|
+ //新增
|
|
|
|
|
+ userAddOne(dynamicObject);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+ //从其他评估对象引入进行新增
|
|
|
if (actionId.equals("pull")) {
|
|
if (actionId.equals("pull")) {
|
|
|
- if (closedCallBackEvent.getReturnData() instanceof ListSelectedRowCollection) {
|
|
|
|
|
- ListSelectedRowCollection selectCollections = (ListSelectedRowCollection) closedCallBackEvent.getReturnData();
|
|
|
|
|
- ArrayList list = new ArrayList();
|
|
|
|
|
- for (ListSelectedRow row : selectCollections) {
|
|
|
|
|
- // list存储id
|
|
|
|
|
- list.add(row.getPrimaryKeyValue());
|
|
|
|
|
- }
|
|
|
|
|
- // 构造QFilte
|
|
|
|
|
- QFilter qFilter = new QFilter("id", QFilter.equals, list.get(0));
|
|
|
|
|
- for (int i = 1; i < list.size(); i++) {
|
|
|
|
|
- qFilter = qFilter.or(new QFilter("id", QFilter.equals, list.get(i)));
|
|
|
|
|
- }
|
|
|
|
|
- // 将选中的id对应的数据从数据库加载出来
|
|
|
|
|
- DynamicObject[] load = BusinessDataServiceHelper.load("bos_user", "id,name,number", qFilter.toArray());
|
|
|
|
|
- //新增
|
|
|
|
|
- userAddTwo(load);
|
|
|
|
|
|
|
+ DynamicObject[] dynamicObjects = userCallback(closedCallBackEvent);
|
|
|
|
|
+ if (dynamicObjects == null){
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+ //引入新增
|
|
|
|
|
+ userAddTwo(dynamicObjects);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ //修改目标确认人
|
|
|
|
|
+ if (actionId.equals("confirmModify")) {
|
|
|
|
|
+ DynamicObject[] dynamicObjects = userCallback(closedCallBackEvent);
|
|
|
|
|
+ if (dynamicObjects == null){
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+ if (dynamicObjects.length != 1) {
|
|
|
|
|
+ this.getView().showTipNotification("目标确认人,只能选择一个");
|
|
|
|
|
+ return;
|
|
|
}
|
|
}
|
|
|
|
|
+ //修改确认人
|
|
|
|
|
+ DynamicObject dynamicObject = dynamicObjects[0];
|
|
|
|
|
+ confirmModify(dynamicObject);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
|
|
+ //回调获取人员数据
|
|
|
|
|
+ private DynamicObject[] userCallback(ClosedCallBackEvent closedCallBackEvent) {
|
|
|
|
|
+ if (closedCallBackEvent.getReturnData() instanceof ListSelectedRowCollection) {
|
|
|
|
|
+ ListSelectedRowCollection selectCollections = (ListSelectedRowCollection) closedCallBackEvent.getReturnData();
|
|
|
|
|
+ Object[] primaryKeyValues = selectCollections.getPrimaryKeyValues();
|
|
|
|
|
+ QFilter qFilter = new QFilter("id", QFilter.in, primaryKeyValues);
|
|
|
|
|
+ // 将选中的id对应的数据从数据库加载出来
|
|
|
|
|
+ DynamicObject[] load = BusinessDataServiceHelper.load(BOS_USER, "id,name,number,entryentity,startdate,entryentity.post,entryentity.dpt,entryentity.ispartjob", new QFilter[]{qFilter});
|
|
|
|
|
+ return load;
|
|
|
|
|
+ }
|
|
|
|
|
+ return null;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
//添加方法一(无论用什么方法一切的前提是拿到员工工号,无论是一个还是一群)
|
|
//添加方法一(无论用什么方法一切的前提是拿到员工工号,无论是一个还是一群)
|
|
@@ -151,10 +232,14 @@ public class EvaluationObjectListPlugin extends AbstractListPlugin implements Pl
|
|
|
//判断条件是否有工号相同的参数
|
|
//判断条件是否有工号相同的参数
|
|
|
QFilter qFilter = new QFilter("uzi9_employeeid", QFilter.equals, employeeId);
|
|
QFilter qFilter = new QFilter("uzi9_employeeid", QFilter.equals, employeeId);
|
|
|
//对评估对象表进行筛选
|
|
//对评估对象表进行筛选
|
|
|
- DynamicObject employeeIdCheck = BusinessDataServiceHelper.loadSingle("uzi9_evaluation_object", "uzi9_employeeid", new QFilter[]{qFilter});
|
|
|
|
|
|
|
+ DynamicObject employeeIdCheck = BusinessDataServiceHelper.loadSingle(EVALUATION_OBJECT, "uzi9_employeeid", new QFilter[]{qFilter});
|
|
|
|
|
|
|
|
//获取通过跳转传过来的活动id并查询对应的活动
|
|
//获取通过跳转传过来的活动id并查询对应的活动
|
|
|
Object activityId = this.getView().getFormShowParameter().getCustomParam("ActivityId");
|
|
Object activityId = this.getView().getFormShowParameter().getCustomParam("ActivityId");
|
|
|
|
|
+ if (activityId == null) {
|
|
|
|
|
+ this.getView().showTipNotification("错误进入,当前没有考核活动id,请从考核活动进入");
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
DynamicObject assessment = BusinessDataServiceHelper.loadSingle("uzi9_assessment_activity", "id", new QFilter[]{new QFilter("id", QFilter.equals, activityId)});
|
|
DynamicObject assessment = BusinessDataServiceHelper.loadSingle("uzi9_assessment_activity", "id", new QFilter[]{new QFilter("id", QFilter.equals, activityId)});
|
|
|
|
|
|
|
|
//判断是否为空
|
|
//判断是否为空
|
|
@@ -163,7 +248,7 @@ public class EvaluationObjectListPlugin extends AbstractListPlugin implements Pl
|
|
|
return;
|
|
return;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- DynamicObject dynamicObject = BusinessDataServiceHelper.newDynamicObject("uzi9_evaluation_object");
|
|
|
|
|
|
|
+ DynamicObject dynamicObject = BusinessDataServiceHelper.newDynamicObject(EVALUATION_OBJECT);
|
|
|
//语言设置默认为zh_CN
|
|
//语言设置默认为zh_CN
|
|
|
Object name = getDefaultValue(useradd.get("name"));
|
|
Object name = getDefaultValue(useradd.get("name"));
|
|
|
//姓名
|
|
//姓名
|
|
@@ -212,13 +297,16 @@ public class EvaluationObjectListPlugin extends AbstractListPlugin implements Pl
|
|
|
dynamicObject.set("enable", 1);
|
|
dynamicObject.set("enable", 1);
|
|
|
//数据状态
|
|
//数据状态
|
|
|
dynamicObject.set("status", "A");
|
|
dynamicObject.set("status", "A");
|
|
|
- OperationResult result = SaveServiceHelper.saveOperate("uzi9_evaluation_object", new DynamicObject[]{dynamicObject}, OperateOption.create());
|
|
|
|
|
|
|
+ //新增评估对象
|
|
|
|
|
+ OperationResult result = SaveServiceHelper.saveOperate(EVALUATION_OBJECT, new DynamicObject[]{dynamicObject}, OperateOption.create());
|
|
|
|
|
+ //新增考核关系
|
|
|
|
|
+ relationship(dynamicObject);
|
|
|
this.getView().updateView();
|
|
this.getView().updateView();
|
|
|
if (result.isSuccess()) {
|
|
if (result.isSuccess()) {
|
|
|
- this.getView().showSuccessNotification("新增数据成功");
|
|
|
|
|
|
|
+ this.getView().showSuccessNotification("新增评估对象数据成功");
|
|
|
this.getView().invokeOperation("refresh");
|
|
this.getView().invokeOperation("refresh");
|
|
|
} else {
|
|
} else {
|
|
|
- this.getView().showErrorNotification("新增数据失败");
|
|
|
|
|
|
|
+ this.getView().showErrorNotification("新增评估对象数据失败");
|
|
|
this.getView().invokeOperation("refresh");
|
|
this.getView().invokeOperation("refresh");
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -229,27 +317,132 @@ public class EvaluationObjectListPlugin extends AbstractListPlugin implements Pl
|
|
|
for (DynamicObject useradd : useradds) {
|
|
for (DynamicObject useradd : useradds) {
|
|
|
Object number = useradd.get("number");
|
|
Object number = useradd.get("number");
|
|
|
//通过工号获取评估对象
|
|
//通过工号获取评估对象
|
|
|
- DynamicObject dynamicObject = BusinessDataServiceHelper.loadSingle("uzi9_evaluation_object", "id,uzi9_assessment_activity,name", new QFilter[]{new QFilter("uzi9_employeeid", QFilter.equals, number)});
|
|
|
|
|
|
|
+ DynamicObject dynamicObject = BusinessDataServiceHelper.loadSingle(EVALUATION_OBJECT, "id,uzi9_assessment_activity,name", new QFilter[]{new QFilter("uzi9_employeeid", QFilter.equals, number)});
|
|
|
|
|
+ //通过工号获取考核关系
|
|
|
|
|
+ DynamicObject dynamicObject2 = BusinessDataServiceHelper.loadSingle(ASSESSMENT_GX, "id,uzi9_assessment_activity,name", new QFilter[]{new QFilter("uzi9_employeeid", QFilter.equals, number)});
|
|
|
|
|
+
|
|
|
if (dynamicObject == null) {
|
|
if (dynamicObject == null) {
|
|
|
this.getView().showTipNotification("当前员工没有加入任何考核活动,请通过新增进行添加");
|
|
this.getView().showTipNotification("当前员工没有加入任何考核活动,请通过新增进行添加");
|
|
|
return;
|
|
return;
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
//获取当下的考核活动id
|
|
//获取当下的考核活动id
|
|
|
Object activityId = this.getView().getFormShowParameter().getCustomParam("ActivityId");
|
|
Object activityId = this.getView().getFormShowParameter().getCustomParam("ActivityId");
|
|
|
//查询考核活动
|
|
//查询考核活动
|
|
|
DynamicObject assessment = BusinessDataServiceHelper.loadSingle("uzi9_assessment_activity", "id", new QFilter[]{new QFilter("id", QFilter.equals, activityId)});
|
|
DynamicObject assessment = BusinessDataServiceHelper.loadSingle("uzi9_assessment_activity", "id", new QFilter[]{new QFilter("id", QFilter.equals, activityId)});
|
|
|
- //修改评价对象的考核活动
|
|
|
|
|
|
|
+ //修改评估对象的考核活动
|
|
|
dynamicObject.set("uzi9_assessment_activity", assessment);
|
|
dynamicObject.set("uzi9_assessment_activity", assessment);
|
|
|
- //更新数据
|
|
|
|
|
- OperationResult result = SaveServiceHelper.saveOperate("uzi9_evaluation_object", new DynamicObject[]{dynamicObject}, OperateOption.create());
|
|
|
|
|
|
|
+
|
|
|
|
|
+ //更新考核对象
|
|
|
|
|
+ OperationResult result = SaveServiceHelper.saveOperate(EVALUATION_OBJECT, new DynamicObject[]{dynamicObject}, OperateOption.create());
|
|
|
|
|
+ //更新考核关系(后续有了上级对象需要进行修改)
|
|
|
|
|
+ SaveServiceHelper.saveOperate(ASSESSMENT_GX, new DynamicObject[]{dynamicObject2}, OperateOption.create());
|
|
|
|
|
+
|
|
|
if (result.isSuccess()) {
|
|
if (result.isSuccess()) {
|
|
|
- this.getView().showSuccessNotification(dynamicObject.get("name") + "转移成功");
|
|
|
|
|
|
|
+ this.getView().showSuccessNotification(dynamicObject.get("name") + " 考核活动转移成功");
|
|
|
} else {
|
|
} else {
|
|
|
this.getView().invokeOperation(dynamicObject.get("name") + "转移失败");
|
|
this.getView().invokeOperation(dynamicObject.get("name") + "转移失败");
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ //考核关系新增
|
|
|
|
|
+ public void relationship(DynamicObject object) {
|
|
|
|
|
+ DynamicObject dynamicObject = BusinessDataServiceHelper.newDynamicObject(ASSESSMENT_GX);
|
|
|
|
|
+ //考核对象封装
|
|
|
|
|
+ //姓名
|
|
|
|
|
+ dynamicObject.set("name", object.get("name"));
|
|
|
|
|
+ //工号
|
|
|
|
|
+ dynamicObject.set("uzi9_employeeid", object.get("uzi9_employeeid"));
|
|
|
|
|
+ //组织
|
|
|
|
|
+ dynamicObject.set("uzi9_orgfield", object.get("uzi9_orgfield"));
|
|
|
|
|
+ //岗位
|
|
|
|
|
+ dynamicObject.set("uzi9_position", object.get("uzi9_position"));
|
|
|
|
|
+ //入职时间
|
|
|
|
|
+ dynamicObject.set("uzi9_date_joining", object.get("uzi9_date_joining"));
|
|
|
|
|
+ /* //直接上级 后续准备
|
|
|
|
|
+ dynamicObject.set("uzi9_direct",);
|
|
|
|
|
+ //虚线上级(可有可无)
|
|
|
|
|
+ dynamicObject.set("uzi9_nothingness",);
|
|
|
|
|
+ //间接上级
|
|
|
|
|
+ dynamicObject.set("uzi9_indirect",);
|
|
|
|
|
+ //目标确认人
|
|
|
|
|
+ dynamicObject.set("uzi9_confirm",);*/
|
|
|
|
|
+ //考核活动
|
|
|
|
|
+ dynamicObject.set("uzi9_assessment_activity", object.get("uzi9_assessment_activity"));
|
|
|
|
|
+ //使用状态
|
|
|
|
|
+ dynamicObject.set("enable", 1);
|
|
|
|
|
+ //数据状态
|
|
|
|
|
+ dynamicObject.set("status", "A");
|
|
|
|
|
+ OperationResult result = SaveServiceHelper.saveOperate(ASSESSMENT_GX, new DynamicObject[]{dynamicObject}, OperateOption.create());
|
|
|
|
|
+ if (result.isSuccess()) {
|
|
|
|
|
+ this.getView().showSuccessNotification("新增考核关系数据成功");
|
|
|
|
|
+ } else {
|
|
|
|
|
+ this.getView().showErrorNotification("新增考核关系数据失败");
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ //目标确认人修改
|
|
|
|
|
+ private void confirmModify(DynamicObject dynamicObject){
|
|
|
|
|
+ //获取选择行的id
|
|
|
|
|
+ BillList billList = this.getControl(AbstractListPlugin.BILLLISTID);
|
|
|
|
|
+ Object[] primaryKeyValues = billList.getSelectedRows().getPrimaryKeyValues();
|
|
|
|
|
+ Object primaryKeyValue = primaryKeyValues[0];
|
|
|
|
|
+
|
|
|
|
|
+ //通过评估对象id获取工号
|
|
|
|
|
+ DynamicObject evaluation = BusinessDataServiceHelper.loadSingle(EVALUATION_OBJECT, "id,uzi9_employeeid", new QFilter[]{new QFilter("id", QFilter.equals, primaryKeyValue)});
|
|
|
|
|
+
|
|
|
|
|
+ Object employeeid = evaluation.get("uzi9_employeeid");
|
|
|
|
|
+ //通过工号去找考核关系对象
|
|
|
|
|
+ DynamicObject relationship = BusinessDataServiceHelper.loadSingle(ASSESSMENT_GX, "id,uzi9_employeeid,uzi9_confirm", new QFilter[]{new QFilter("uzi9_employeeid", QFilter.equals, employeeid)});
|
|
|
|
|
+ if (relationship == null) {
|
|
|
|
|
+ this.getView().showErrorNotification("选择的评估对象,没有对应的考核关系,请联系开发人员");
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ relationship.set("uzi9_confirm", dynamicObject);
|
|
|
|
|
+ OperationResult result = SaveServiceHelper.saveOperate(ASSESSMENT_GX, new DynamicObject[]{relationship}, OperateOption.create());
|
|
|
|
|
+
|
|
|
|
|
+ if (result.isSuccess()) {
|
|
|
|
|
+ this.getView().showSuccessNotification(dynamicObject.get("name") + "目标确认人修改成功");
|
|
|
|
|
+ }else {
|
|
|
|
|
+ this.getView().showSuccessNotification(dynamicObject.get("name") + "目标确认人修改失败");
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ //更新评估对象信息(目前更新的情况为,bos_user中的数据就是最新的,不存在历史数据,考核关系方面的同步暂时不做)
|
|
|
|
|
+ private void bosUpdate(Object[] primaryKeyValues){
|
|
|
|
|
+ //通过id获取评估对象
|
|
|
|
|
+ DynamicObject[] load = BusinessDataServiceHelper.load(EVALUATION_OBJECT, "id,uzi9_employeeid,uzi9_position,uzi9_orgfield", new QFilter[]{new QFilter("id", QFilter.in, primaryKeyValues)});
|
|
|
|
|
+ //遍历每一个评估对象,进行更新
|
|
|
|
|
+ for (DynamicObject dynamicObject : load) {
|
|
|
|
|
+ Object employeeid = dynamicObject.get("uzi9_employeeid");
|
|
|
|
|
+ //获取人员数据
|
|
|
|
|
+ DynamicObject bosUser = BusinessDataServiceHelper.loadSingle(BOS_USER, "number,entryentity,entryentity.post,entryentity.dpt,entryentity.ispartjob", new QFilter[]{new QFilter("number", QFilter.equals, employeeid)});
|
|
|
|
|
+ //获取人员中部门分录单据体
|
|
|
|
|
+ DynamicObjectCollection entryentity = bosUser.getDynamicObjectCollection("entryentity");
|
|
|
|
|
+ for (DynamicObject entry : entryentity) {
|
|
|
|
|
+ //只要主岗位
|
|
|
|
|
+ boolean bl = (boolean) entry.get("ispartjob");
|
|
|
|
|
+ if (!bl){
|
|
|
|
|
+ //岗位更新
|
|
|
|
|
+ Object post = entry.get("post");
|
|
|
|
|
+ if (post != null) {
|
|
|
|
|
+ dynamicObject.set("uzi9_position",post);
|
|
|
|
|
+ }
|
|
|
|
|
+ //组织更新
|
|
|
|
|
+ Object dpt = entry.get("dpt");
|
|
|
|
|
+ if (dpt != null) {
|
|
|
|
|
+ dynamicObject.set("uzi9_orgfield",dpt);
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ SaveServiceHelper.saveOperate(EVALUATION_OBJECT,new DynamicObject[]{dynamicObject});
|
|
|
|
|
+ }
|
|
|
|
|
+ this.getView().showSuccessNotification("更新完毕");
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
//语言设置
|
|
//语言设置
|
|
|
private Object getDefaultValue(Object localeValue) {
|
|
private Object getDefaultValue(Object localeValue) {
|
|
|
if (localeValue instanceof OrmLocaleValue) {
|
|
if (localeValue instanceof OrmLocaleValue) {
|
|
@@ -260,5 +453,26 @@ public class EvaluationObjectListPlugin extends AbstractListPlugin implements Pl
|
|
|
return localeValue;
|
|
return localeValue;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-
|
|
|
|
|
|
|
+ //人员bos_user跳转
|
|
|
|
|
+ private void bosUserJump(String callback) {
|
|
|
|
|
+ //跳转调人员bos_user去选择
|
|
|
|
|
+ ListShowParameter parameter = new ListShowParameter();
|
|
|
|
|
+ //设置实体id
|
|
|
|
|
+ parameter.setBillFormId(BOS_USER);
|
|
|
|
|
+ //设置选择状态
|
|
|
|
|
+ parameter.setLookUp(true);
|
|
|
|
|
+ //设置展开
|
|
|
|
|
+ parameter.getOpenStyle().setShowType(ShowType.Modal);
|
|
|
|
|
+ //设置模版id
|
|
|
|
|
+ parameter.setFormId("bos_usertreelistf7");
|
|
|
|
|
+ //设置回调
|
|
|
|
|
+ parameter.setCloseCallBack(new CloseCallBack(this, callback));
|
|
|
|
|
+ // 设置展开宽度,高度
|
|
|
|
|
+ StyleCss styleCss = new StyleCss();
|
|
|
|
|
+ styleCss.setWidth("800");
|
|
|
|
|
+ styleCss.setHeight("500");
|
|
|
|
|
+ parameter.getOpenStyle().setInlineStyleCss(styleCss);
|
|
|
|
|
+ //跳转
|
|
|
|
|
+ getView().showForm(parameter);
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|