87 lines
3.8 KiB
Java
87 lines
3.8 KiB
Java
|
package shkd.repc.recon.api;
|
|||
|
|
|||
|
import com.alibaba.fastjson.JSONArray;
|
|||
|
import com.alibaba.fastjson.JSONObject;
|
|||
|
import kd.bos.dataentity.entity.DynamicObjectCollection;
|
|||
|
import kd.bos.openapi.common.custom.annotation.ApiController;
|
|||
|
|
|||
|
import com.drew.lang.annotations.NotNull;
|
|||
|
import kd.bos.dataentity.entity.DynamicObject;
|
|||
|
import kd.bos.openapi.common.custom.annotation.ApiParam;
|
|||
|
import kd.bos.openapi.common.custom.annotation.ApiPostMapping;
|
|||
|
import kd.bos.openapi.common.result.CustomApiResult;
|
|||
|
import kd.bos.orm.query.QCP;
|
|||
|
import kd.bos.orm.query.QFilter;
|
|||
|
import kd.bos.servicehelper.BusinessDataServiceHelper;
|
|||
|
import kd.bos.servicehelper.QueryServiceHelper;
|
|||
|
import kd.bos.servicehelper.operation.SaveServiceHelper;
|
|||
|
import kd.bos.util.StringUtils;
|
|||
|
|
|||
|
import java.io.Serializable;
|
|||
|
import java.util.ArrayList;
|
|||
|
import java.util.List;
|
|||
|
import java.util.Set;
|
|||
|
|
|||
|
/**
|
|||
|
* 合同签署流程回调接口(e签宝接口文档 3.6.2.1)
|
|||
|
*/
|
|||
|
|
|||
|
|
|||
|
@ApiController(value = "SignTechnologCallbackController",desc = "合同签署流程回调api接口,自定义插件")
|
|||
|
public class SignTechnologCallbackController implements Serializable {
|
|||
|
|
|||
|
@ApiPostMapping(value = "/eqb_signcallback", desc = "合同签署流程回调接口")
|
|||
|
public CustomApiResult<Object> eqb_signcallback
|
|||
|
(@NotNull @ApiParam(value = "入参", example = "") String str) {
|
|||
|
|
|||
|
CustomApiResult customApiResult = new CustomApiResult();
|
|||
|
JSONObject jsonObject = JSONObject.parseObject(str);
|
|||
|
|
|||
|
//回调通知数据体
|
|||
|
JSONObject callBackProcessVO = (JSONObject)jsonObject.get("callBackProcessVO");
|
|||
|
if (null != callBackProcessVO) {
|
|||
|
//获取合同id
|
|||
|
String businessNo = (String) callBackProcessVO.get("businessNo");
|
|||
|
if (StringUtils.isNotEmpty(businessNo)) {
|
|||
|
DynamicObject recon_contractbill = BusinessDataServiceHelper.loadSingle("recon_contractbill",
|
|||
|
"id,billno,qeug_theothersignstatus",new QFilter[]{new QFilter("billno", QCP.equals, businessNo)});
|
|||
|
if (null != recon_contractbill) {
|
|||
|
|
|||
|
|
|||
|
|
|||
|
//待签署方列表
|
|||
|
JSONArray nextSignerList = callBackProcessVO.getJSONArray("nextSignerList");
|
|||
|
if (null != nextSignerList) {
|
|||
|
JSONObject jsonobject = (JSONObject)nextSignerList.get(0);
|
|||
|
String signStatus = jsonobject.getString("signStatus");
|
|||
|
recon_contractbill.set("qeug_theothersignstatus",signStatus);//状态
|
|||
|
SaveServiceHelper.save(new DynamicObject[]{recon_contractbill});
|
|||
|
return customApiResult ;
|
|||
|
}
|
|||
|
|
|||
|
//签署方列表
|
|||
|
JSONArray signerList = callBackProcessVO.getJSONArray("signerList");
|
|||
|
if (null != signerList) {
|
|||
|
JSONObject jsonobject = (JSONObject)nextSignerList.get(0);
|
|||
|
String signStatus = jsonobject.getString("signStatus");
|
|||
|
recon_contractbill.set("qeug_theothersignstatus",signStatus);
|
|||
|
SaveServiceHelper.save(new DynamicObject[]{recon_contractbill});
|
|||
|
return customApiResult ;
|
|||
|
}
|
|||
|
|
|||
|
//拒签人信息
|
|||
|
JSONObject refuseSigner = (JSONObject)callBackProcessVO.get("refuseSigner");
|
|||
|
if (null != refuseSigner) {
|
|||
|
String signStatus = refuseSigner.getString("signStatus");
|
|||
|
recon_contractbill.set("qeug_theothersignstatus",signStatus);
|
|||
|
SaveServiceHelper.save(new DynamicObject[]{recon_contractbill});
|
|||
|
return customApiResult ;
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
return customApiResult;
|
|||
|
}
|
|||
|
}
|