组织禁用,项目增加日志保存
This commit is contained in:
parent
6bd349cc42
commit
b6bd171de6
|
@ -12,9 +12,12 @@ import kd.bos.logging.Log;
|
||||||
import kd.bos.logging.LogFactory;
|
import kd.bos.logging.LogFactory;
|
||||||
import kd.bos.org.model.OrgDutyView;
|
import kd.bos.org.model.OrgDutyView;
|
||||||
import kd.bos.org.model.OrgParam;
|
import kd.bos.org.model.OrgParam;
|
||||||
|
import kd.bos.orm.query.QCP;
|
||||||
import kd.bos.orm.query.QFilter;
|
import kd.bos.orm.query.QFilter;
|
||||||
import kd.bos.schedule.executor.AbstractTask;
|
import kd.bos.schedule.executor.AbstractTask;
|
||||||
|
import kd.bos.servicehelper.BusinessDataServiceHelper;
|
||||||
import kd.bos.servicehelper.QueryServiceHelper;
|
import kd.bos.servicehelper.QueryServiceHelper;
|
||||||
|
import kd.bos.servicehelper.operation.SaveServiceHelper;
|
||||||
import kd.bos.servicehelper.org.OrgUnitServiceHelper;
|
import kd.bos.servicehelper.org.OrgUnitServiceHelper;
|
||||||
import kd.bos.servicehelper.org.OrgViewType;
|
import kd.bos.servicehelper.org.OrgViewType;
|
||||||
import kd.sdk.plugin.Plugin;
|
import kd.sdk.plugin.Plugin;
|
||||||
|
@ -62,8 +65,13 @@ public class DobeDWorgTask extends AbstractTask implements Plugin {
|
||||||
JSONObject json_body = JSON.parseObject(resultData);
|
JSONObject json_body = JSON.parseObject(resultData);
|
||||||
//接口返回的数据进行了分页
|
//接口返回的数据进行了分页
|
||||||
int totalNum = json_body.getIntValue("totalNum");//分页-SQL查询总数据量
|
int totalNum = json_body.getIntValue("totalNum");//分页-SQL查询总数据量
|
||||||
|
List<String> exprtNumber = new ArrayList<>();//存储此次入参的所有编号,用于后续排除
|
||||||
//解析接口返回值,与系统数据比较
|
//解析接口返回值,与系统数据比较
|
||||||
handleOrg(json_body);
|
handleOrg(json_body,exprtNumber);
|
||||||
|
//定时任务获取的参数和参数值是配置调度程序和作业的时候设置,根据参数值保存从数仓获取到的完整json
|
||||||
|
if(map != null && "yes".equals(map.get("savedwjson"))){
|
||||||
|
DobeDWUtils.saveLog("savedwjson1","组织接口",resultData,null,true,"定时任务");
|
||||||
|
}
|
||||||
int queryCount = DobeDWUtils.getQueryCount(totalNum);
|
int queryCount = DobeDWUtils.getQueryCount(totalNum);
|
||||||
if(queryCount > 1){
|
if(queryCount > 1){
|
||||||
//查询次数不止一次,需要分页查询
|
//查询次数不止一次,需要分页查询
|
||||||
|
@ -82,7 +90,26 @@ public class DobeDWorgTask extends AbstractTask implements Plugin {
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
}
|
}
|
||||||
json_body = JSON.parseObject(resultData);
|
json_body = JSON.parseObject(resultData);
|
||||||
handleOrg(json_body);
|
handleOrg(json_body,exprtNumber);
|
||||||
|
if(map != null && "yes".equals(map.get("savedwjson"))){
|
||||||
|
DobeDWUtils.saveLog("savedwjson"+i,"组织接口",resultData,null,true,"定时任务");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//处理组织禁用
|
||||||
|
QFilter exprtFilter = new QFilter("number", QCP.not_in, exprtNumber);
|
||||||
|
QFilter enableFilter = new QFilter("enable", QCP.equals, "1");
|
||||||
|
DynamicObject[] dos = BusinessDataServiceHelper.load(entityName,"id,number,fyzjorgid,enable",new QFilter[]{exprtFilter.and(enableFilter)});
|
||||||
|
if(dos.length > 0){
|
||||||
|
String yzjorgid;
|
||||||
|
for (DynamicObject doinfo : dos) {
|
||||||
|
yzjorgid = doinfo.getString("fyzjorgid");//保存数仓组织ID,不为空且剔除根节点的组织需要禁用
|
||||||
|
if(!DobeDWUtils.isEmpty(yzjorgid) && !"900110458".equals(yzjorgid)){
|
||||||
|
doinfo.set("enable", "0");//组织禁用
|
||||||
|
//保存数据:直接保存入库,不走操作校验
|
||||||
|
SaveServiceHelper.save(new DynamicObject[]{doinfo});
|
||||||
|
log.info("组织禁用 "+doinfo.getString("number"));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -101,7 +128,7 @@ public class DobeDWorgTask extends AbstractTask implements Plugin {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void handleOrg(JSONObject json_body) {
|
private void handleOrg(JSONObject json_body,List<String> exprtNumber) {
|
||||||
JSONArray detailsJson = json_body.getJSONArray("data");
|
JSONArray detailsJson = json_body.getJSONArray("data");
|
||||||
// List<OrgParam> paramList = new ArrayList<>();
|
// List<OrgParam> paramList = new ArrayList<>();
|
||||||
OrgParam param = null;
|
OrgParam param = null;
|
||||||
|
@ -130,6 +157,7 @@ public class DobeDWorgTask extends AbstractTask implements Plugin {
|
||||||
log.info(String.format("组织入参为空异常:%s", json_body.toJSONString()));
|
log.info(String.format("组织入参为空异常:%s", json_body.toJSONString()));
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
exprtNumber.add(orgNumber);
|
||||||
//根据父级ID获取父级组织对象,组织的主数据id存在于星瀚组织的fyzjorgid字段中
|
//根据父级ID获取父级组织对象,组织的主数据id存在于星瀚组织的fyzjorgid字段中
|
||||||
parentOrg = QueryServiceHelper.queryOne(entityName,"id,number,name",new QFilter[]{new QFilter("fyzjorgid","=",parentId)});
|
parentOrg = QueryServiceHelper.queryOne(entityName,"id,number,name",new QFilter[]{new QFilter("fyzjorgid","=",parentId)});
|
||||||
if(parentOrg == null){
|
if(parentOrg == null){
|
||||||
|
|
|
@ -63,6 +63,10 @@ public class DobeDWprojectTask extends AbstractTask implements Plugin {
|
||||||
//接口返回的数据进行了分页
|
//接口返回的数据进行了分页
|
||||||
int totalNum = json_body.getIntValue("totalNum");//分页-SQL查询总数据量
|
int totalNum = json_body.getIntValue("totalNum");//分页-SQL查询总数据量
|
||||||
handleProject(json_body);
|
handleProject(json_body);
|
||||||
|
//定时任务获取的参数和参数值是配置调度程序和作业的时候设置,根据参数值保存从数仓获取到的完整json
|
||||||
|
if(map != null && "yes".equals(map.get("savedwjson"))){
|
||||||
|
DobeDWUtils.saveLog("savedwjson1","项目接口",resultData,null,true,"定时任务");
|
||||||
|
}
|
||||||
int queryCount = DobeDWUtils.getQueryCount(totalNum);
|
int queryCount = DobeDWUtils.getQueryCount(totalNum);
|
||||||
if(queryCount > 1){
|
if(queryCount > 1){
|
||||||
//查询次数不止一次,需要分页查询
|
//查询次数不止一次,需要分页查询
|
||||||
|
@ -81,9 +85,11 @@ public class DobeDWprojectTask extends AbstractTask implements Plugin {
|
||||||
}
|
}
|
||||||
json_body = JSON.parseObject(resultData);
|
json_body = JSON.parseObject(resultData);
|
||||||
handleProject(json_body);
|
handleProject(json_body);
|
||||||
|
if(map != null && "yes".equals(map.get("savedwjson"))){
|
||||||
|
DobeDWUtils.saveLog("savedwjson"+i,"项目接口",resultData,null,true,"定时任务");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void handleProject(JSONObject json_body) {
|
private void handleProject(JSONObject json_body) {
|
||||||
|
|
Loading…
Reference in New Issue