其他入库申请单调FW_获取流程流转数据(OtherInApplyWorkflowDataListPlugin)
This commit is contained in:
parent
10b8ede110
commit
19901ba992
|
|
@ -10,13 +10,18 @@ import kd.bos.entity.datamodel.ListSelectedRowCollection;
|
||||||
import kd.bos.entity.datamodel.events.PackageDataEvent;
|
import kd.bos.entity.datamodel.events.PackageDataEvent;
|
||||||
import kd.bos.list.BillList;
|
import kd.bos.list.BillList;
|
||||||
import kd.bos.list.plugin.AbstractListPlugin;
|
import kd.bos.list.plugin.AbstractListPlugin;
|
||||||
|
import kd.bos.logging.Log;
|
||||||
|
import kd.bos.logging.LogFactory;
|
||||||
import kd.bos.orm.query.QCP;
|
import kd.bos.orm.query.QCP;
|
||||||
import kd.bos.orm.query.QFilter;
|
import kd.bos.orm.query.QFilter;
|
||||||
import kd.bos.servicehelper.BusinessDataServiceHelper;
|
import kd.bos.servicehelper.BusinessDataServiceHelper;
|
||||||
|
import kd.bos.servicehelper.QueryServiceHelper;
|
||||||
import kd.bos.servicehelper.operation.SaveServiceHelper;
|
import kd.bos.servicehelper.operation.SaveServiceHelper;
|
||||||
import kd.sdk.plugin.Plugin;
|
import kd.sdk.plugin.Plugin;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
|
import tqq9.lc123.cloud.app.plugin.utils.ConfigUtils;
|
||||||
import tqq9.lc123.cloud.app.plugin.utils.FWRestfulUtils;
|
import tqq9.lc123.cloud.app.plugin.utils.FWRestfulUtils;
|
||||||
|
import tqq9.lc123.cloud.app.plugin.utils.FWUtils;
|
||||||
|
|
||||||
import java.util.EventObject;
|
import java.util.EventObject;
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
|
|
@ -28,6 +33,7 @@ import java.util.Set;
|
||||||
*/
|
*/
|
||||||
public class OtherInApplyWorkflowDataListPlugin extends AbstractListPlugin implements Plugin {
|
public class OtherInApplyWorkflowDataListPlugin extends AbstractListPlugin implements Plugin {
|
||||||
|
|
||||||
|
private static final Log log = LogFactory.getLog(OtherInApplyWorkflowDataListPlugin.class);
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void afterBindData(EventObject e) {
|
public void afterBindData(EventObject e) {
|
||||||
|
|
@ -39,64 +45,65 @@ public class OtherInApplyWorkflowDataListPlugin extends AbstractListPlugin imple
|
||||||
Long primaryKeyValue = (Long) row.getPrimaryKeyValue();
|
Long primaryKeyValue = (Long) row.getPrimaryKeyValue();
|
||||||
idSet.add(primaryKeyValue);
|
idSet.add(primaryKeyValue);
|
||||||
}
|
}
|
||||||
|
//获取第三方配置表的泛微用户ID
|
||||||
|
String userid = ConfigUtils.getThirdConfigByNumber("FW_WorkFlowInfo_UserId");
|
||||||
|
|
||||||
QFilter f = new QFilter("id", "in", idSet);
|
QFilter f = new QFilter("id", "in", idSet);
|
||||||
DynamicObject[] billArr = BusinessDataServiceHelper.load("tqq9_otherinapply",
|
DynamicObject[] billArr = BusinessDataServiceHelper.load("tqq9_otherinapply",
|
||||||
"id,billno,tqq9_fwrequestid,tqq9_fwstate,tqq9_auditor,tqq9_auditornode", new QFilter[]{f});
|
"id,billno,tqq9_fwrequestid,tqq9_fwstate,tqq9_auditor,tqq9_auditornode", new QFilter[]{f});
|
||||||
for (DynamicObject tqq9_otherinapply : billArr) {
|
for (DynamicObject tqq9_otherinapply : billArr) {
|
||||||
String billno = tqq9_otherinapply.getString("billno");
|
String billno = tqq9_otherinapply.getString("billno");
|
||||||
|
log.info("billno:"+billno);
|
||||||
String tqq9_fwrequestid = tqq9_otherinapply.getString("tqq9_fwrequestid");
|
String tqq9_fwrequestid = tqq9_otherinapply.getString("tqq9_fwrequestid");
|
||||||
String tqq9_fwstate = tqq9_otherinapply.getString("tqq9_fwstate");
|
String tqq9_fwstate = tqq9_otherinapply.getString("tqq9_fwstate");
|
||||||
if(StringUtils.isNotBlank(tqq9_fwrequestid) && "B".equals(tqq9_fwstate)){
|
if(StringUtils.isNotBlank(tqq9_fwrequestid) && "B".equals(tqq9_fwstate)){
|
||||||
String userid = null;
|
if(StringUtils.isBlank(userid)){
|
||||||
//获取当前用户id
|
//获取当前用户id对应的泛微用户ID
|
||||||
Long id = RequestContext.get().getCurrUserId();
|
Long id = RequestContext.get().getCurrUserId();
|
||||||
DynamicObject user = BusinessDataServiceHelper.loadSingle("bos_user",
|
QFilter f1 = new QFilter("id", "=", id);
|
||||||
new QFilter[]{new QFilter("id", QCP.equals, id)});
|
QFilter f2 = new QFilter("entryentity.ispartjob", "=", false);
|
||||||
DynamicObjectCollection entryentity = (DynamicObjectCollection) user.get("entryentity");
|
DynamicObject bos_user = QueryServiceHelper.queryOne("bos_user", "id,entryentity.tqq9_fwuserid", new QFilter[]{f1, f2});
|
||||||
if (entryentity != null && entryentity.size() > 0) {
|
if (bos_user != null) {
|
||||||
for (DynamicObject entry : entryentity) {
|
userid = bos_user.getString("entryentity.tqq9_fwuserid");
|
||||||
userid = entry.getString("tqq9_fwuserid");
|
|
||||||
if (StringUtils.isNotBlank(userid)) {
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if (userid == null) {
|
if (StringUtils.isBlank(userid)) {
|
||||||
//获取泛微人员id失败
|
log.info("没有获取到泛微用户ID,当前用户ID:"+id);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
String requestName = "FW_获取流程流转数据";
|
String requestName = "FW_获取流程流转数据";
|
||||||
|
//调用泛微接口获取下一步处理人
|
||||||
String bodyString = FWRestfulUtils.getFwWorkFlowInfo(requestName, billno, tqq9_fwrequestid, userid);
|
String bodyString = FWRestfulUtils.getFwWorkFlowInfo(requestName, billno, tqq9_fwrequestid, userid);
|
||||||
|
log.info("billno:"+billno+",bodyString:"+bodyString);
|
||||||
JSONObject map = JSONObject.parseObject(bodyString);
|
JSONObject map = JSONObject.parseObject(bodyString);
|
||||||
JSONArray data = map.getJSONArray("data");//节点id
|
if (map != null) {
|
||||||
|
JSONArray data = map.getJSONArray("data");//节点id
|
||||||
|
if (data != null && data.size() > 0) {
|
||||||
if (data != null && data.size() > 0) {
|
String nodeName = null;
|
||||||
String nodeName = null;
|
String fwuserid = null;
|
||||||
String fwuserid = null;
|
for (int i = 0; i < data.size(); i++) {
|
||||||
for (int i = 0; i < data.size(); i++) {
|
JSONObject data0 = (JSONObject) data.get(i);
|
||||||
JSONObject data0 = (JSONObject) data.get(i);
|
Integer isremark = data0.getInteger("isremark");
|
||||||
Integer isremark = data0.getInteger("isremark");
|
nodeName = data0.getString("nodeName");
|
||||||
nodeName = data0.getString("nodeName");
|
if (StringUtils.isNotBlank(nodeName) && isremark != null) {
|
||||||
if (StringUtils.isNotBlank(nodeName) && isremark != null) {
|
if (isremark == 0 && !nodeName.contains("归档")) {
|
||||||
if (isremark == 0 && !nodeName.contains("归档")) {
|
fwuserid = String.valueOf(data0.getInteger("userid"));
|
||||||
fwuserid = String.valueOf(data0.getInteger("userid"));
|
break;
|
||||||
break;
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
if (StringUtils.isNotBlank(fwuserid)) {
|
||||||
if (StringUtils.isNotBlank(fwuserid)) {
|
DynamicObject[] fwuserArr = BusinessDataServiceHelper.load("bos_user", "id,name,number",
|
||||||
DynamicObject[] fwuserArr = BusinessDataServiceHelper.load("bos_user", "id,name,number",
|
new QFilter[]{new QFilter("entryentity.tqq9_fwuserid", QCP.equals, fwuserid)});
|
||||||
new QFilter[]{new QFilter("entryentity.tqq9_fwuserid", QCP.equals, fwuserid)});
|
if (fwuserArr != null && fwuserArr.length > 0) {
|
||||||
if (fwuserArr != null && fwuserArr.length > 0) {
|
tqq9_otherinapply.set("tqq9_auditor", fwuserArr[0]);//待审批人
|
||||||
tqq9_otherinapply.set("tqq9_auditor", fwuserArr[0]);//待审批人
|
tqq9_otherinapply.set("tqq9_auditornode", nodeName);//节点名称
|
||||||
tqq9_otherinapply.set("tqq9_auditornode", nodeName);//节点名称
|
SaveServiceHelper.save(new DynamicObject[]{tqq9_otherinapply});
|
||||||
SaveServiceHelper.save(new DynamicObject[]{tqq9_otherinapply});
|
}
|
||||||
}
|
}
|
||||||
}
|
} }
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue