二次开发问题(编制问题)

栏目:s-hr cloud知识作者:金蝶来源:金蝶云社区发布:2024-09-17浏览:1

二次开发问题(编制问题)

在人力编制表中通过dep添加了一个字段是否允许超编, 在修改编制的之后, 后台通过
private void refreshUpdateList(IObjectBase iStaffing, AbstractObjectCollection updateList, String type, String idm,
int staffing, StaffingInfo staffingInfo, String staffingDetail,
Map leafadminInfoMap, int monthIndex)
throws BOSException, EASBizException {
StaffingBaseInfo info = null;
int updateSize = updateList.size();

int soiIndex = 0;
for (; soiIndex < updateSize; ++soiIndex) {
StaffingBaseInfo soi = (StaffingBaseInfo) updateList
.getObject(soiIndex);
if (soi.getId().toString().equals(idm)) {
info = soi;
break;
}
}
if (soiIndex == updateSize) {//得到修改之前的数据
info = (StaffingBaseInfo) iStaffing
.getObjectBaseInfo(new ObjectUuidPK(idm));

info.setState(staffingInfo.getState());
updateList.addObject(info);
}
Boolean saveStaffingDetailFlag = Boolean
.valueOf((staffingInfo.getYear() > DateHelper.getCurrentYear())
|| ((staffingInfo.getYear() == DateHelper
.getCurrentYear()) && (((monthIndex == 0) || (monthIndex >= DateHelper
.getCurrentMonth())))));
if (type.equals("1")) {
info.setAllStaffing(staffing);
if (saveStaffingDetailFlag.booleanValue()) {
info.setAllStaffingDetail(staffingDetail);
}
AdminOrgUnitInfo adminOrgInfo = (AdminOrgUnitInfo) info
.getObjectValue("adminOrgunit");
String orgId = adminOrgInfo.getId().toString();
setLeafAdminDirectStaffing(staffing, leafadminInfoMap, orgId, info);
} else if (type.equals("2")) {
info.setDirectStaffing(staffing);
if (!(saveStaffingDetailFlag.booleanValue()))
return;
info.setDirectStaffingDetail(staffingDetail);
} else if (type.equals("")) {
info.setAllStaffing(staffing);
}
}
这个方法将修改的数据放到容器里面去,由于新加的字段,数据库中有,但是在实体类里面没有这个字段,我看了代码,它本身字段是同个实体set进去的,我新加这个字段实体中没有 放不进去, 更新就没有更新到这个字段,


人力编制这一块逻辑 需要代码特殊处理。DEP增加的字段可以使用sql来更新

二次开发问题(编制问题)

在人力编制表中通过dep添加了一个字段是否允许超编, 在修改编制的之后, 后台通过private void refreshUpdateList(IObjectBase iStaf...
点击下载文档
分享:
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息